/** * {@inheritDoc} */ @Override public IAtom getOther(IAtom atom) { return bond.getOther(atom); }
@Override public IBond getBond(IAtom atom) { for (IBond bond : bonds) { if (bond.getOther(this).equals(atom)) return bond; } return null; }
@Override public IBond getBond(IAtom atom) { for (IBond bond : bonds) { if (bond.getOther(this).equals(atom)) return bond; } return null; }
@Override public IBond getBond(IAtom atom) { for (IBond bond : bonds) { if (bond.getOther(this).equals(atom)) return bond; } return null; }
@Override public IBond getBond(IAtom atom) { for (IBond bond : bonds) { if (bond.getOther(this).equals(atom)) return bond; } return null; }
private int countExplicitHydrogens(IAtom atom, List<IBond> connectedBonds) { int count = 0; for (IBond bond : connectedBonds) { IAtom aAtom = bond.getOther(atom); if (aAtom.getSymbol().equals("H")) { count++; } } return count; }
private int countExplicitHydrogens(IAtom atom, List<IBond> connectedBonds) { int count = 0; for (IBond bond : connectedBonds) { IAtom aAtom = bond.getOther(atom); if (aAtom.getSymbol().equals("H")) { count++; } } return count; }
private static IAtom getOtherAtom(IAtomContainer mol, IAtom atom, IAtom other) { List<IBond> bonds = mol.getConnectedBondsList(atom); if (bonds.size() != 2) return null; if (bonds.get(0).contains(other)) return bonds.get(1).getOrder() == IBond.Order.DOUBLE ? bonds.get(1).getOther(atom) : null; return bonds.get(0).getOrder() == IBond.Order.DOUBLE ? bonds.get(0).getOther(atom) : null; }
/** * {@inheritDoc} */ @Override public IBond getBond(IAtom atom1, IAtom atom2) { for (int i = 0; i < getBondCount(); i++) { if (bonds[i].contains(atom1) && bonds[i].getOther(atom1).equals(atom2)) { return bonds[i]; } } return null; }
/** * {@inheritDoc} */ @Override public IBond getBond(IAtom atom1, IAtom atom2) { for (int i = 0; i < getBondCount(); i++) { if (bonds[i].contains(atom1) && bonds[i].getOther(atom1).equals(atom2)) { return bonds[i]; } } return null; }
/** * {@inheritDoc} */ @Override public IBond getBond(IAtom atom1, IAtom atom2) { for (int i = 0; i < getBondCount(); i++) { if (bonds[i].contains(atom1) && bonds[i].getOther(atom1).equals(atom2)) { return bonds[i]; } } return null; }
/** * Given an index of an atom in the query get the index of the other atom in * the double bond. * * @param i query atom index * @return the other atom index involved in a double bond */ private int otherIndex(int i) { IDoubleBondStereochemistry element = (IDoubleBondStereochemistry) queryElements[i]; return queryMap.get(element.getStereoBond().getOther(query.getAtom(i))); }
private boolean isThioAmide(IAtom atom, IAtomContainer atomContainer, List<IBond> connectedBonds) { if (connectedBonds.size() < 1) return false; for (IBond bond : connectedBonds) { IAtom neighbor = bond.getOther(atom); if (neighbor.getSymbol().equals("C")) { if (countAttachedDoubleBonds(atomContainer.getConnectedBondsList(neighbor), neighbor, "S") == 1) return true; } } return false; }
protected static List<IBond> traverse(IAtomContainer atomContainer, IAtom atom, List<IBond> bondList) { List<IBond> connectedBonds = atomContainer.getConnectedBondsList(atom); for (IBond aBond : connectedBonds) { if (bondList.contains(aBond)) continue; bondList.add(aBond); IAtom nextAtom = aBond.getOther(atom); if (atomContainer.getConnectedBondsCount(nextAtom) == 1) continue; traverse(atomContainer, nextAtom, bondList); } return bondList; }
private boolean isAmide(IAtom atom, IAtomContainer atomContainer, List<IBond> connectedBonds) { if (connectedBonds.size() < 1) return false; for (IBond bond : connectedBonds) { IAtom neighbor = bond.getOther(atom); if (neighbor.getSymbol().equals("C")) { if (countAttachedDoubleBonds(atomContainer.getConnectedBondsList(neighbor), neighbor, "O") == 1) return true; } } return false; }
private boolean isAmide(IAtom atom, IAtomContainer atomContainer, List<IBond> connectedBonds) { if (connectedBonds.size() < 1) return false; for (IBond bond : connectedBonds) { IAtom neighbor = bond.getOther(atom); if (neighbor.getSymbol().equals("C")) { if (countAttachedDoubleBonds(atomContainer.getConnectedBondsList(neighbor), neighbor, "O") == 1) return true; } } return false; }
/** * {@inheritDoc} */ @Override public List<IAtom> getConnectedAtomsList(IAtom atom) { AtomRef aref = getAtomRef(atom); List<IAtom> nbrs = new ArrayList<>(aref.getBondCount()); for (IBond bond : aref.bonds()) { nbrs.add(bond.getOther(atom)); } return nbrs; }
private static int getTotalHCount(IAtom atom) { int h = unbox(atom.getImplicitHydrogenCount()); for (IBond bond : atom.bonds()) if (eq(bond.getOther(atom).getAtomicNumber(), 1)) h++; return h; }
private static void traverseRings(IAtomContainer mol, IAtom atom, IBond prev) { atom.setFlag(CDKConstants.VISITED, true); prev.setFlag(CDKConstants.VISITED, true); for (IBond bond : mol.getConnectedBondsList(atom)) { IAtom nbr = bond.getOther(atom); if (!nbr.getFlag(CDKConstants.VISITED)) traverseRings(mol, nbr, bond); else bond.setFlag(CDKConstants.VISITED, true); } }
private static void traverseRings(IAtomContainer mol, IAtom atom, IBond prev) { atom.setFlag(CDKConstants.VISITED, true); prev.setFlag(CDKConstants.VISITED, true); for (IBond bond : mol.getConnectedBondsList(atom)) { IAtom nbr = bond.getOther(atom); if (!nbr.getFlag(CDKConstants.VISITED)) traverseRings(mol, nbr, bond); else bond.setFlag(CDKConstants.VISITED, true); } }