public TBond addTBond(ABond a1, ABond a2) {
		if (a1.equals(a2))
			return null;
		if (a1.getAtom2() == a2.getAtom2())
			return null;
		Atom[] at = ABond.getSharedAtom(a1, a2);
		if (at == null || at[0] == null || at[1] == null)
			return null;
		TBond tbond = new TBond(a1, a2); // angle already set in the constructor
		if (model.addTBond(tbond)) {
			int i = tbond.getAtom1().getIndex();
			int j = tbond.getAtom2().getIndex();
			int k = tbond.getAtom3().getIndex();
			int l = tbond.getAtom4().getIndex();
			viewer.addTBond(i, j, k, l);
			viewer.setHighlightTBond(i, j, k, l);
			viewer.setHighlightTBondVisible(true);
		}
		model.notifyChange();
		return tbond;
	}