From: Yap C. W. <ph...@nu...> - 2011-08-01 02:32:38
|
Dear Rajarshi and Egon, One of my collaborators is having trouble reading hyperchem files (HIN files) with CDK. As I was tracing through the code, I noticed that the code to identify aromatic atoms and bonds in the HINReader.java may not be correct. I have modified it as shown below (lines which were changed were highlighted in red). I am not sure whether this modification is correct but it is working for me so far. Best regards, Chun Wei case 'a': bo = IBond.Order.SINGLE; atom.setFlag(CDKConstants.ISAROMATIC, true); break; } List<Object> ar = new ArrayList<Object>(3); ar.add(atomSerial); ar.add(s); ar.add(bo); cons.add( ar ); } m.addAtom(atom); atomSerial++; line = input.readLine(); } // now just store all the bonds we have for (List<Object> ar : cons) { IAtom s = m.getAtom((Integer) ar.get(0)); IAtom e = m.getAtom((Integer) ar.get(1)); IBond.Order bo = (IBond.Order) ar.get(2); if (!isConnected(m, s, e)) { IBond newBond = null; if (s.getFlag(CDKConstants.ISAROMATIC) || e.getFlag(CDKConstants.ISAROMATIC)) { newBond = file.getBuilder().newInstance(IBond.class,s, e, bo); newBond.setFlag(CDKConstants.ISAROMATIC, true); } else { newBond = file.getBuilder().newInstance(IBond.class,s, e, bo); } m.addBond(newBond); } } |