class PharmacophoreQueryAngleBond extends Bond implements IQueryBond {

    @Override
    public boolean matches(IBond bond) {
        bond = BondRef.deref(bond);
        if (bond instanceof PharmacophoreAngleBond) {
            PharmacophoreAngleBond pbond = (PharmacophoreAngleBond) bond;
            double bondLength = round(pbond.getBondLength(), 2);
            return bondLength >= lower && bondLength <= upper;
        } else
            return false;
    }

    public  PharmacophoreQueryAngleBond();
    public  PharmacophoreQueryAngleBond(PharmacophoreQueryAtom atom1, PharmacophoreQueryAtom atom2,
            PharmacophoreQueryAtom atom3, double lower, double upper);
    public  PharmacophoreQueryAngleBond(PharmacophoreQueryAtom atom1, PharmacophoreQueryAtom atom2,
            PharmacophoreQueryAtom atom3, double angle);

}