package com.revolsys.geometry.model.impl; import com.revolsys.geometry.model.BoundingBox; import com.revolsys.util.MathUtil; public class BaseBoundingBox implements BoundingBox { /** * */ private static final long serialVersionUID = 1L; public BaseBoundingBox() { super(); } @Override public BoundingBox clone() { try { return (BoundingBox)super.clone(); } catch (final CloneNotSupportedException e) { return null; } } @Override public boolean equals(final Object other) { if (other instanceof BoundingBox) { final BoundingBox boundingBox = (BoundingBox)other; return equals(boundingBox); } else { return false; } } @Override public int hashCode() { if (isEmpty()) { return 0; } else { final double minX = getMinX(); final double minY = getMinY(); final double maxX = getMaxX(); final double maxY = getMaxY(); int result = 17; result = 37 * result + MathUtil.hashCode(minX); result = 37 * result + MathUtil.hashCode(maxX); result = 37 * result + MathUtil.hashCode(minY); result = 37 * result + MathUtil.hashCode(maxY); return result; } } @Override public String toString() { return BoundingBox.toString(this); } }