Class Geometry

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    Curve, MultiGeometry, Point, PolygonBase

    @NonNullByDefault
    public abstract class Geometry
    extends java.lang.Object
    implements java.io.Serializable
    The base class of all geometries
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int UNKNOWN_SRID
      Official UNKNOWN srid value
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Geometry​(int type)
      Constructor for subclasses.
    • Field Detail

      • UNKNOWN_SRID

        public static final int UNKNOWN_SRID
        Official UNKNOWN srid value
        See Also:
        Constant Field Values
    • Constructor Detail

      • Geometry

        protected Geometry​(int type)
        Constructor for subclasses.
        Parameters:
        type - has to be given by all subclasses
    • Method Detail

      • checkConsistency

        public boolean checkConsistency()
        Do some internal consistency checks on the geometry. Currently, all Geometries must have a valid dimension (2 or 3) and a valid type. Composed geometries must have all equal SRID, dimensionality and measures, as well as that they do not contain NULL or inconsistent subgeometries. BinaryParser and WKTParser should only generate consistent geometries. BinaryWriter may produce invalid results on inconsistent geometries.
        Returns:
        true if all checks are passed.
      • equals

        public boolean equals​(@Nullable
                              java.lang.Object obj)
        java.lang.Object equals implementation
        Overrides:
        equals in class java.lang.Object
        Parameters:
        obj - geometry to compare
        Returns:
        true if equal, false otherwise
      • getCoordinates

        public abstract java.lang.Iterable<Point> getCoordinates()
        Gets the coordinates of this Geometry.
        Returns:
        coordinates
      • getDimension

        @Deprecated
        public int getDimension()
        Deprecated.
        use is3d() instead
        Queries the number of geometric dimensions of this geometry. This does not include measures, as opposed to the server.
        Returns:
        The dimensionality (eg, 2D or 3D) of this geometry.
      • getNumberOfCoordinates

        public abstract int getNumberOfCoordinates()
        Gets the number of coordinates of this Geometry.
        Returns:
        number of coordinates
      • getSrid

        public int getSrid()
        The OGIS geometry type number of this geometry.
        Returns:
        the SRID of this geometry
      • getType

        public int getType()
        Gets the OGIS geometry type number of this geometry.
        Returns:
        type of this geometry
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • hasMeasure

        public abstract boolean hasMeasure()
        Returns whether we have a measure (4th dimension)
        Returns:
        true if the geometry has a measure, false otherwise
      • is3d

        public abstract boolean is3d()
        Checks if this Geometry is 3d.
        Returns:
        true on success, else false
      • isEmpty

        public abstract boolean isEmpty()
        Ist this Geometry empty, so does it contain no coordinates or other geometries?
        Returns:
        true on success, else false
      • numPoints

        @Deprecated
        public final int numPoints()
        Deprecated.
        Return the number of Points of the geometry
        Returns:
        number of points in the geometry
      • setSrid

        public void setSrid​(int srid)
        Recursively sets the srid on this geometry and all contained subgeometries
        Parameters:
        srid - the SRID for this geometry