@Override public boolean equals(Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (super.equals(obj) == false) { return false; } if ((obj instanceof Polygon) == false) { return false; } Polygon other = ((Polygon) obj); if (extrude == null) { if (other.extrude != null) { return false; } } else { if (extrude.equals(other.extrude) == false) { return false; } } if (tessellate == null) { if (other.tessellate != null) { return false; } } else { if (tessellate.equals(other.tessellate) == false) { return false; } } if (altitudeMode == null) { if (other.altitudeMode != null) { return false; } } else { if (altitudeMode.equals(other.altitudeMode) == false) { return false; } } if (outerBoundaryIs == null) { if (other.outerBoundaryIs != null) { return false; } } else { if (outerBoundaryIs.equals(other.outerBoundaryIs) == false) { return false; } } if (innerBoundaryIs == null) { if (other.innerBoundaryIs != null) { return false; } } else { if (innerBoundaryIs.equals(other.innerBoundaryIs) == false) { return false; } } if (polygonSimpleExtension == null) { if (other.polygonSimpleExtension != null) { return false; } } else { if (polygonSimpleExtension.equals(other.polygonSimpleExtension) == false) { return false; } } if (polygonObjectExtension == null) { if (other.polygonObjectExtension != null) { return false; } } else { if (polygonObjectExtension.equals(other.polygonObjectExtension) == false) { return false; } } return true; }