From: Egon W. <eg...@us...> - 2003-10-13 19:24:27
|
Update of /cvsroot/jmol/Jmol/src/org/openscience/jmol/adapters In directory sc8-pr-cvs1:/tmp/cvs-serv17577/src/org/openscience/jmol/adapters Modified Files: CdkJmolModelAdapter.java Log Message: Detect CDK exceptions inside for loop, so that configuring one atom won't affect the rest Index: CdkJmolModelAdapter.java =================================================================== RCS file: /cvsroot/jmol/Jmol/src/org/openscience/jmol/adapters/CdkJmolModelAdapter.java,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- CdkJmolModelAdapter.java 13 Oct 2003 17:47:01 -0000 1.20 +++ CdkJmolModelAdapter.java 13 Oct 2003 19:24:21 -0000 1.21 @@ -49,6 +49,8 @@ import org.openscience.cdk.renderer.color.PartialAtomicChargeColors; import org.openscience.cdk.tools.AtomTypeFactory; +import org.openscience.cdk.tools.SetOfMoleculesManipulator; +import org.openscience.cdk.tools.ChemFileManipulator; import org.openscience.cdk.io.ReaderFactory; import org.openscience.cdk.io.ChemObjectReader; @@ -100,10 +102,14 @@ return "unknown error reading file"; try { AtomTypeFactory factory = AtomTypeFactory.getInstance("jmol_atomtypes.txt"); - AtomContainer atomContainer = getAtomContainer(chemFile, 0); + AtomContainer atomContainer = ChemFileManipulator.getAllInOneContainer(chemFile); Atom[] atoms = atomContainer.getAtoms(); for (int i=0; i<atoms.length; i++) { - factory.configure(atoms[i]); + try { + factory.configure(atoms[i]); + } catch (CDKException exception) { + System.out.println("Could not configure atom: " + atoms[i]); + } } } catch (ClassNotFoundException exception) { // could not configure atoms... what to do? @@ -113,10 +119,6 @@ // could not configure atoms... what to do? System.err.println(exception.toString()); exception.printStackTrace(); - } catch (CDKException exception) { - // could not configure atoms... what to do? - System.err.println(exception.toString()); - exception.printStackTrace(); } return chemFile; } @@ -164,7 +166,7 @@ SetOfMolecules setOfMolecules = chemModel.getSetOfMolecules(); Crystal crystal = chemModel.getCrystal(); if (setOfMolecules != null) { - Molecule molecule = setOfMolecules.getMolecule(0); + AtomContainer molecule = SetOfMoleculesManipulator.getAllInOneContainer(setOfMolecules); return molecule; } else if (crystal != null) { return crystal; |