/** * Returns the geometric 3D center of the query bond. * * @return The geometric 3D center of the query bond */ @Override public Point3d get3DCenter() { double xOfCenter = 0; double yOfCenter = 0; double zOfCenter = 0; for (IAtom atom : atoms) { xOfCenter += atom.getPoint3d().x; yOfCenter += atom.getPoint3d().y; zOfCenter += atom.getPoint3d().z; } return new Point3d(xOfCenter / getAtomCount(), yOfCenter / getAtomCount(), zOfCenter / getAtomCount()); }
/** * Returns the geometric 2D center of the query bond. * * @return The geometric 2D center of the query bond */ @Override public Point2d get2DCenter() { double xOfCenter = 0; double yOfCenter = 0; for (IAtom atom : atoms) { xOfCenter += atom.getPoint2d().x; yOfCenter += atom.getPoint2d().y; } return new Point2d(xOfCenter / ((double) getAtomCount()), yOfCenter / ((double) getAtomCount())); }
/** * Returns a one line string representation of this query bond. * * @return The string representation of this query bond */ @Override public String toString() { StringBuffer resultString = new StringBuffer(32); resultString.append("Bond(").append(this.hashCode()); if (getOrder() != null) { resultString.append(", #O:").append(getOrder()); } resultString.append(", #S:").append(getStereo()); if (getAtomCount() > 0) { resultString.append(", #A:").append(getAtomCount()); for (int i = 0; i < atomCount; i++) { resultString.append(", ").append(atoms[i] == null ? "null" : atoms[i].toString()); } } resultString.append(", ").append(super.toString()); resultString.append(')'); return resultString.toString(); }