class XYImageAnnotation extends AbstractXYAnnotation implements Cloneable, PublicCloneable, Serializable {

    @Override
    public boolean equals(Object obj) {
        if (obj == this) {
            return true;
        }
        // now try to reject equality...
        if (!super.equals(obj)) {
            return false;
        }
        if (!(obj instanceof XYImageAnnotation)) {
            return false;
        }
        XYImageAnnotation that = (XYImageAnnotation) obj;
        if (this.x != that.x) {
            return false;
        }
        if (this.y != that.y) {
            return false;
        }
        if (!ObjectUtils.equal(this.image, that.image)) {
            return false;
        }
        if (!this.anchor.equals(that.anchor)) {
            return false;
        }
        // seems to be the same...
        return true;
    }

    public  XYImageAnnotation(double x, double y, Image image);
    public  XYImageAnnotation(double x, double y, Image image,
            RectangleAnchor anchor);

}