Class OGCConcreteGeometryCollection


public class OGCConcreteGeometryCollection extends OGCGeometryCollection
  • Field Details

    • TYPE

      public static String TYPE
  • Constructor Details

  • Method Details

    • dimension

      public int dimension()
      Overrides:
      dimension in class OGCGeometry
    • coordinateDimension

      public int coordinateDimension()
      Overrides:
      coordinateDimension in class OGCGeometry
    • is3D

      public boolean is3D()
      Overrides:
      is3D in class OGCGeometry
    • isMeasured

      public boolean isMeasured()
      Overrides:
      isMeasured in class OGCGeometry
    • envelope

      public OGCGeometry envelope()
      Overrides:
      envelope in class OGCGeometry
    • numGeometries

      public int numGeometries()
      Description copied from class: OGCGeometryCollection
      Returns the number of geometries in this GeometryCollection.
      Specified by:
      numGeometries in class OGCGeometryCollection
    • geometryN

      public OGCGeometry geometryN(int n)
      Description copied from class: OGCGeometryCollection
      Returns the Nth geometry in this GeometryCollection.
      Specified by:
      geometryN in class OGCGeometryCollection
      Parameters:
      n - The 0 based index of the geometry.
    • geometryType

      public String geometryType()
      Specified by:
      geometryType in class OGCGeometry
    • estimateMemorySize

      public long estimateMemorySize()
      Description copied from class: OGCGeometry
      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.

      Specified by:
      estimateMemorySize in class OGCGeometry
      Returns:
      Returns an estimate of this object size in bytes.
    • asText

      public String asText()
      Overrides:
      asText in class OGCGeometry
    • asBinary

      public ByteBuffer asBinary()
      Overrides:
      asBinary in class OGCGeometry
    • asGeoJson

      public String asGeoJson()
      Overrides:
      asGeoJson in class OGCGeometry
    • isEmpty

      public boolean isEmpty()
      Overrides:
      isEmpty in class OGCGeometry
    • MinZ

      public double MinZ()
      Overrides:
      MinZ in class OGCGeometry
    • MaxZ

      public double MaxZ()
      Overrides:
      MaxZ in class OGCGeometry
    • MinMeasure

      public double MinMeasure()
      Overrides:
      MinMeasure in class OGCGeometry
    • MaxMeasure

      public double MaxMeasure()
      Overrides:
      MaxMeasure in class OGCGeometry
    • isSimple

      public boolean isSimple()
      Description copied from class: OGCGeometry
      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.
      Overrides:
      isSimple in class OGCGeometry
      Returns:
      True if geometry is simple and false otherwise. Note: If isSimple is true, then isSimpleRelaxed is true too.
    • makeSimple

      public OGCGeometry makeSimple()
      makeSimpleRelaxed is not supported for the GeometryCollection instance.
      Overrides:
      makeSimple in class OGCGeometry
      Returns:
      Returns simplified geometry. Note: isSimple and isSimpleRelaxed should return true after this operation.
    • isSimpleRelaxed

      public boolean isSimpleRelaxed()
      Description copied from class: OGCGeometry
      Extension method - checks if geometry is simple for Geodatabase.
      Overrides:
      isSimpleRelaxed in class OGCGeometry
      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

      public OGCGeometry makeSimpleRelaxed(boolean forceProcessing)
      makeSimpleRelaxed is not supported for the GeometryCollection instance.
      Overrides:
      makeSimpleRelaxed in class OGCGeometry
      Returns:
      Returns simplified geometry. Note: isSimpleRelaxed should return true after this operation.
    • boundary

      public OGCGeometry boundary()
      Specified by:
      boundary in class OGCGeometry
    • locateAlong

      public OGCGeometry locateAlong(double mValue)
      Specified by:
      locateAlong in class OGCGeometry
    • locateBetween

      public OGCGeometry locateBetween(double mStart, double mEnd)
      Specified by:
      locateBetween in class OGCGeometry
    • getEsriGeometry

      public Geometry getEsriGeometry()
      Specified by:
      getEsriGeometry in class OGCGeometry
    • getEsriGeometryCursor

      public GeometryCursor getEsriGeometryCursor()
      Overrides:
      getEsriGeometryCursor in class OGCGeometry
    • isConcreteGeometryCollection

      protected boolean isConcreteGeometryCollection()
      Overrides:
      isConcreteGeometryCollection in class OGCGeometry
    • convexHull

      public OGCGeometry convexHull()
      Overrides:
      convexHull in class OGCGeometry
    • setSpatialReference

      public void setSpatialReference(SpatialReference esriSR_)
      Overrides:
      setSpatialReference in class OGCGeometry
    • convertToMulti

      public OGCGeometry convertToMulti()
      Description copied from class: OGCGeometry
      Converts this Geometry to the OGCMulti* if it is not OGCMulti* or OGCGeometryCollection already.
      Specified by:
      convertToMulti in class OGCGeometry
      Returns:
      OGCMulti* or OGCGeometryCollection instance.
    • reduceFromMulti

      public OGCGeometry reduceFromMulti()
      Description copied from class: OGCGeometry
      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.
      Specified by:
      reduceFromMulti in class OGCGeometry
      Returns:
      A reduced geometry or this.
    • asJson

      public String asJson()
      Overrides:
      asJson in class OGCGeometry
      Returns:
      Convert to REST JSON.
    • equals

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

      public int hashCode()
      Overrides:
      hashCode in class OGCGeometry
    • distance

      public double distance(OGCGeometry another)
      Overrides:
      distance in class OGCGeometry
    • overlaps

      public boolean overlaps(OGCGeometry another)
      Overrides:
      overlaps in class OGCGeometry
    • touches

      public boolean touches(OGCGeometry another)
      Overrides:
      touches in class OGCGeometry
    • crosses

      public boolean crosses(OGCGeometry another)
      Overrides:
      crosses in class OGCGeometry
    • relate

      public boolean relate(OGCGeometry another, String matrix)
      Overrides:
      relate in class OGCGeometry
    • disjoint

      public boolean disjoint(OGCGeometry another)
      Overrides:
      disjoint in class OGCGeometry
    • contains

      public boolean contains(OGCGeometry another)
      Overrides:
      contains in class OGCGeometry
    • Equals

      public boolean Equals(OGCGeometry another)
      Description copied from class: OGCGeometry
      OGC equals. Performs topological comparison with tolerance. This is different from equals(Object), that uses exact comparison.
      Overrides:
      Equals in class OGCGeometry
    • difference

      public OGCGeometry difference(OGCGeometry another)
      Overrides:
      difference in class OGCGeometry
    • intersection

      public OGCGeometry intersection(OGCGeometry another)
      Overrides:
      intersection in class OGCGeometry
    • symDifference

      public OGCGeometry symDifference(OGCGeometry another)
      Overrides:
      symDifference in class OGCGeometry
    • isFlattened

      public boolean isFlattened()
      Checks if collection is flattened.
      Returns:
      True for the flattened collection. A flattened collection contains up to three non-empty geometries: an OGCMultiPoint, an OGCMultiPolygon, and an OGCMultiLineString.
    • flatten

      Flattens Geometry Collection. The result collection contains up to three geometries: an OGCMultiPoint, an OGCMultilineString, and an OGCMultiPolygon (in that order).
      Returns:
      A flattened Geometry Collection, or self if already flattened.
    • flattenAndRemoveOverlaps

      public OGCConcreteGeometryCollection flattenAndRemoveOverlaps()
      Fixes topological overlaps in the GeometryCollecion. This is equivalent to union of the geometry collection elements. TODO "flattened" collection is supposed to contain only mutli-geometries, but this method may return single geometries e.g. for GEOMETRYCOLLECTION (LINESTRING (...)) it returns GEOMETRYCOLLECTION (LINESTRING (...)) and not GEOMETRYCOLLECTION (MULTILINESTRING (...))
      Returns:
      A geometry collection that is flattened and has no overlapping elements.