/// <summary>OGC equals.</summary>
 /// <remarks>
 /// OGC equals. Performs topological comparison with tolerance.
 /// This is different from equals(Object), that uses exact comparison.
 /// </remarks>
 public virtual bool Equals(com.epl.geometry.ogc.OGCGeometry another)
 {
     if (this == another)
     {
         return(true);
     }
     if (another == null)
     {
         return(false);
     }
     com.epl.geometry.Geometry geom1 = GetEsriGeometry();
     com.epl.geometry.Geometry geom2 = another.GetEsriGeometry();
     return(com.epl.geometry.GeometryEngine.Equals(geom1, geom2, GetEsriSpatialReference()));
 }
 public override bool Equals(object other)
 {
     if (other == null)
     {
         return(false);
     }
     if (other == this)
     {
         return(true);
     }
     if (other.GetType() != GetType())
     {
         return(false);
     }
     com.epl.geometry.ogc.OGCGeometry another = (com.epl.geometry.ogc.OGCGeometry)other;
     com.epl.geometry.Geometry        geom1   = GetEsriGeometry();
     com.epl.geometry.Geometry        geom2   = another.GetEsriGeometry();
     if (geom1 == null)
     {
         if (geom2 != null)
         {
             return(false);
         }
     }
     else
     {
         if (!geom1.Equals(geom2))
         {
             return(false);
         }
     }
     if (esriSR == another.esriSR)
     {
         return(true);
     }
     if (esriSR != null && another.esriSR != null)
     {
         return(esriSR.Equals(another.esriSR));
     }
     return(false);
 }
 public virtual com.epl.geometry.ogc.OGCGeometry SymDifference(com.epl.geometry.ogc.OGCGeometry another)
 {
     com.epl.geometry.Geometry geom1 = GetEsriGeometry();
     com.epl.geometry.Geometry geom2 = another.GetEsriGeometry();
     return(CreateFromEsriGeometry(com.epl.geometry.GeometryEngine.SymmetricDifference(geom1, geom2, GetEsriSpatialReference()), esriSR));
 }
 // analysis
 public virtual double Distance(com.epl.geometry.ogc.OGCGeometry another)
 {
     com.epl.geometry.Geometry geom1 = GetEsriGeometry();
     com.epl.geometry.Geometry geom2 = another.GetEsriGeometry();
     return(com.epl.geometry.GeometryEngine.Distance(geom1, geom2, GetEsriSpatialReference()));
 }
 public virtual bool Relate(com.epl.geometry.ogc.OGCGeometry another, string matrix)
 {
     com.epl.geometry.Geometry geom1 = GetEsriGeometry();
     com.epl.geometry.Geometry geom2 = another.GetEsriGeometry();
     return(com.epl.geometry.GeometryEngine.Relate(geom1, geom2, GetEsriSpatialReference(), matrix));
 }
 public virtual bool Overlaps(com.epl.geometry.ogc.OGCGeometry another)
 {
     com.epl.geometry.Geometry geom1 = GetEsriGeometry();
     com.epl.geometry.Geometry geom2 = another.GetEsriGeometry();
     return(com.epl.geometry.GeometryEngine.Overlaps(geom1, geom2, GetEsriSpatialReference()));
 }