public ABond addABond(RBond r1, RBond r2) {
		if (r1.equals(r2))
			return null;
		ABond abond = new ABond(r1, r2); // angle already set in the constructor
		if (model.addABond(abond)) {
			viewer.addABond(abond.getAtom1().getIndex(), abond.getAtom2().getIndex(), abond.getAtom3().getIndex());
			Point3f p1 = new Point3f(abond.getAtom1().getRx(), abond.getAtom1().getRy(), abond.getAtom1().getRz());
			Point3f p2 = new Point3f(abond.getAtom2().getRx(), abond.getAtom2().getRy(), abond.getAtom2().getRz());
			Point3f p3 = new Point3f(abond.getAtom3().getRx(), abond.getAtom3().getRy(), abond.getAtom3().getRz());
			viewer.setHighlightTriangleVertices(p1, p2, p3);
			viewer.setHighlightTriangleVisible(true);
			model.notifyChange();
		}
		return abond;
	}