Class LinearRing

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Comparable, Lineal

    public class LinearRing
    extends LineString
    Models an OGC SFS LinearRing. A LinearRing is a LineString which is both closed and simple. In other words, the first and last coordinate in the ring must be equal, and the ring must not self-intersect. Either orientation of the ring is allowed.

    A ring must have either 0 or 3 or more points. The first and last points must be equal (in 2D). If these conditions are not met, the constructors throw an IllegalArgumentException. A ring with 3 points is invalid, because it is collapsed and thus has a self-intersection. It is allowed to be constructed so that it can be represented, and repaired if needed.

    Version:
    1.7
    See Also:
    Serialized Form
    • Field Detail

      • MINIMUM_VALID_SIZE

        public static final int MINIMUM_VALID_SIZE
        The minimum number of vertices allowed in a valid non-empty ring. Empty rings with 0 vertices are also valid.
        See Also:
        Constant Field Values
    • Constructor Detail

      • LinearRing

        public LinearRing​(Coordinate[] points,
                          PrecisionModel precisionModel,
                          int SRID)
        Deprecated.
        Use GeometryFactory instead
        Constructs a LinearRing with the given points.
        Parameters:
        points - points forming a closed and simple linestring, or null or an empty array to create the empty geometry. This array must not contain null elements.
        precisionModel - the specification of the grid of allowable points for this LinearRing
        SRID - the ID of the Spatial Reference System used by this LinearRing
        Throws:
        java.lang.IllegalArgumentException - if the ring is not closed, or has too few points
      • LinearRing

        public LinearRing​(CoordinateSequence points,
                          GeometryFactory factory)
        Constructs a LinearRing with the vertices specified by the given CoordinateSequence.
        Parameters:
        points - a sequence points forming a closed and simple linestring, or null to create the empty geometry.
        Throws:
        java.lang.IllegalArgumentException - if the ring is not closed, or has too few points
    • Method Detail

      • getBoundaryDimension

        public int getBoundaryDimension()
        Returns Dimension.FALSE, since by definition LinearRings do not have a boundary.
        Overrides:
        getBoundaryDimension in class LineString
        Returns:
        Dimension.FALSE
      • isClosed

        public boolean isClosed()
        Tests whether this ring is closed. Empty rings are closed by definition.
        Overrides:
        isClosed in class LineString
        Returns:
        true if this ring is closed
      • getGeometryType

        public java.lang.String getGeometryType()
        Description copied from class: Geometry
        Returns the name of this Geometry's actual class.
        Overrides:
        getGeometryType in class LineString
        Returns:
        the name of this Geometrys actual class
      • reverseInternal

        public LinearRing reverseInternal()