Class OGCGeometry

java.lang.Object
com.esri.core.geometry.ogc.OGCGeometry
Direct Known Subclasses:
OGCCurve, OGCGeometryCollection, OGCPoint, OGCSurface

public abstract class OGCGeometry extends Object
OGC Simple Feature Access specification v.1.2.1
  • Field Details

  • Constructor Details

    • OGCGeometry

      public OGCGeometry()
  • Method Details

    • dimension

      public int dimension()
    • coordinateDimension

      public int coordinateDimension()
    • geometryType

      public abstract String geometryType()
    • estimateMemorySize

      public abstract long estimateMemorySize()
      Returns an estimate of this object size in bytes.

      This estimate doesn't include the size of the SpatialReference object because instances of SpatialReference are expected to be shared among geometry objects.

      Returns:
      Returns an estimate of this object size in bytes.
    • SRID

      public int SRID()
    • envelope

      public OGCGeometry envelope()
    • asText

      public String asText()
    • asBinary

      public ByteBuffer asBinary()
    • asGeoJson

      public String asGeoJson()
    • asGeoJsonImpl

      String asGeoJsonImpl(int export_flags)
    • asJson

      public String asJson()
      Returns:
      Convert to REST JSON.
    • isEmpty

      public boolean isEmpty()
    • MinZ

      public double MinZ()
    • MaxZ

      public double MaxZ()
    • MinMeasure

      public double MinMeasure()
    • MaxMeasure

      public double MaxMeasure()
    • isSimple

      public boolean isSimple()
      Returns true if this geometric object has no anomalous geometric points, such as self intersection or self tangency. See the "Simple feature access - Part 1" document (OGC 06-103r4) for meaning of "simple" for each geometry type. The method has O(n log n) complexity when the input geometry is simple. For non-simple geometries, it terminates immediately when the first issue is encountered.
      Returns:
      True if geometry is simple and false otherwise. Note: If isSimple is true, then isSimpleRelaxed is true too.
    • isSimpleRelaxed

      public boolean isSimpleRelaxed()
      Extension method - checks if geometry is simple for Geodatabase.
      Returns:
      Returns true if geometry is simple, false otherwise. Note: If isSimpleRelaxed is true, then isSimple is either true or false. Geodatabase has more relaxed requirements for simple geometries than OGC.
    • MakeSimpleRelaxed

      @Deprecated public OGCGeometry MakeSimpleRelaxed(boolean forceProcessing)
      Deprecated.
    • makeSimpleRelaxed

      public OGCGeometry makeSimpleRelaxed(boolean forceProcessing)
      Makes a simple geometry for Geodatabase.
      Returns:
      Returns simplified geometry. Note: isSimpleRelaxed should return true after this operation.
    • makeSimple

      public OGCGeometry makeSimple()
      Resolves topological issues in this geometry and makes it Simple according to OGC specification.
      Returns:
      Returns simplified geometry. Note: isSimple and isSimpleRelaxed should return true after this operation.
    • is3D

      public boolean is3D()
    • isMeasured

      public boolean isMeasured()
    • boundary

      public abstract OGCGeometry boundary()
    • Equals

      public boolean Equals(OGCGeometry another)
      OGC equals. Performs topological comparison with tolerance. This is different from equals(Object), that uses exact comparison.
    • equals

      @Deprecated public boolean equals(OGCGeometry another)
      Deprecated.
    • disjoint

      public boolean disjoint(OGCGeometry another)
    • intersects

      public boolean intersects(OGCGeometry another)
    • touches

      public boolean touches(OGCGeometry another)
    • crosses

      public boolean crosses(OGCGeometry another)
    • within

      public boolean within(OGCGeometry another)
    • contains

      public boolean contains(OGCGeometry another)
    • overlaps

      public boolean overlaps(OGCGeometry another)
    • relate

      public boolean relate(OGCGeometry another, String matrix)
    • locateAlong

      public abstract OGCGeometry locateAlong(double mValue)
    • locateBetween

      public abstract OGCGeometry locateBetween(double mStart, double mEnd)
    • distance

      public double distance(OGCGeometry another)
    • simplifyBunch_

      private OGCGeometry simplifyBunch_(GeometryCursor gc)
    • buffer

      public OGCGeometry buffer(double distance)
    • centroid

      public OGCGeometry centroid()
    • convexHull

      public OGCGeometry convexHull()
    • intersection

      public OGCGeometry intersection(OGCGeometry another)
    • union

      public OGCGeometry union(OGCGeometry another)
    • difference

      public OGCGeometry difference(OGCGeometry another)
    • symDifference

      public OGCGeometry symDifference(OGCGeometry another)
    • getEsriGeometry

      public abstract Geometry getEsriGeometry()
    • getEsriGeometryCursor

      public GeometryCursor getEsriGeometryCursor()
    • getEsriSpatialReference

      public SpatialReference getEsriSpatialReference()
    • createFromEsriCursor

      public static OGCGeometry createFromEsriCursor(GeometryCursor gc, SpatialReference sr)
      Create an OGCGeometry instance from the GeometryCursor.
      Parameters:
      gc -
      sr -
      Returns:
      Geometry instance created from the geometry cursor.
    • createFromEsriCursor

      public static OGCGeometry createFromEsriCursor(GeometryCursor gc, SpatialReference sr, boolean skipEmpty)
    • fromText

      public static OGCGeometry fromText(String text)
    • fromBinary

      public static OGCGeometry fromBinary(ByteBuffer binary)
    • fromEsriShape

      public static OGCGeometry fromEsriShape(ByteBuffer buffer)
    • fromJson

      public static OGCGeometry fromJson(String string)
    • fromGeoJson

      public static OGCGeometry fromGeoJson(String string)
    • createFromEsriGeometry

      public static OGCGeometry createFromEsriGeometry(Geometry geom, SpatialReference sr)
    • createFromEsriGeometry

      public static OGCGeometry createFromEsriGeometry(Geometry geom, SpatialReference sr, boolean multiType)
    • createFromOGCStructure

      public static OGCGeometry createFromOGCStructure(OGCStructure ogcStructure, SpatialReference sr)
    • isConcreteGeometryCollection

      protected boolean isConcreteGeometryCollection()
    • setSpatialReference

      public void setSpatialReference(SpatialReference esriSR_)
    • convertToMulti

      public abstract OGCGeometry convertToMulti()
      Converts this Geometry to the OGCMulti* if it is not OGCMulti* or OGCGeometryCollection already.
      Returns:
      OGCMulti* or OGCGeometryCollection instance.
    • reduceFromMulti

      public abstract OGCGeometry reduceFromMulti()
      For the geometry collection types, when it has 1 or 0 elements, converts a MultiPolygon to Polygon, MultiPoint to Point, MultiLineString to a LineString, and OGCConcretGeometryCollection to the reduced element it contains. If OGCConcretGeometryCollection is empty, returns self.
      Returns:
      A reduced geometry or this.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object