AtomPlacer3D { boolean isRingHeavyAtom(IAtom atom) { return atom.getFlag(CDKConstants.ISINRING) && isHeavyAtom(atom); } AtomPlacer3D(); void initilize(Map parameterSet); int[] findHeavyAtomsInChain(IAtomContainer molecule, IAtomContainer chain); IAtomContainer markPlaced(IAtomContainer ac); void placeAliphaticHeavyChain(IAtomContainer molecule, IAtomContainer chain); void zmatrixChainToCartesian(IAtomContainer molecule, boolean flagBranched); double getBondLengthValue(String id1, String id2); double getAngleValue(String id1, String id2, String id3); IAtom getNextUnplacedHeavyAtomWithAliphaticPlacedNeighbour(IAtomContainer molecule); IAtom getNextPlacedHeavyAtomWithUnplacedAliphaticNeighbour(IAtomContainer molecule); IAtom getNextPlacedHeavyAtomWithUnplacedRingNeighbour(IAtomContainer molecule); IAtom getFarthestAtom(Point3d refAtomPoint, IAtomContainer ac); IAtom getUnplacedRingHeavyAtom(IAtomContainer molecule, IAtom atom); Point3d geometricCenterAllPlacedAtoms(IAtomContainer molecule); IAtom getPlacedHeavyAtom(IAtomContainer molecule, IAtom atom); IAtom getPlacedHeavyAtom(IAtomContainer molecule, IAtom atomA, IAtom atomB); IAtomContainer getPlacedHeavyAtoms(IAtomContainer molecule, IAtom atom); int numberOfUnplacedHeavyAtoms(IAtomContainer ac); boolean allHeavyAtomsPlaced(IAtomContainer ac);  }
@Test public void testIsRingHeavyAtom() { IAtomContainer ac = makeMethaneWithExplicitHydrogens(); IAtom carbon = ac.getAtom(0); IAtom hydrogen = ac.getAtom(1); AtomPlacer3D placer = new AtomPlacer3D(); boolean result = false; result = placer.isRingHeavyAtom(carbon); Assert.assertFalse(result); result = placer.isRingHeavyAtom(hydrogen); Assert.assertFalse(result); carbon.setFlag(CDKConstants.ISINRING, true); result = placer.isRingHeavyAtom(carbon); Assert.assertTrue(result); hydrogen.setFlag(CDKConstants.ISINRING, true); result = placer.isRingHeavyAtom(hydrogen); Assert.assertFalse(result); }