Class BasicSegmentString

  • All Implemented Interfaces:
    SegmentString

    public class BasicSegmentString
    extends Object
    implements SegmentString
    Represents a read-only list of contiguous line segments. This can be used for detection of intersections or nodes. SegmentStrings can carry a context object, which is useful for preserving topological or parentage information.

    If adding nodes is required use NodedSegmentString.

    Version:
    1.7
    See Also:
    NodedSegmentString
    • Constructor Detail

      • BasicSegmentString

        public BasicSegmentString​(Coordinate[] pts,
                                  Object data)
        Creates a new segment string from a list of vertices.
        Parameters:
        pts - the vertices of the segment string
        data - the user-defined data of this segment string (may be null)
    • Method Detail

      • getData

        public Object getData()
        Gets the user-defined data for this segment string.
        Specified by:
        getData in interface SegmentString
        Returns:
        the user-defined data
      • setData

        public void setData​(Object data)
        Sets the user-defined data for this segment string.
        Specified by:
        setData in interface SegmentString
        Parameters:
        data - an Object containing user-defined data
      • size

        public int size()
        Description copied from interface: SegmentString
        Gets the number of coordinates in this segment string.
        Specified by:
        size in interface SegmentString
        Returns:
        the number of coordinates
      • getCoordinate

        public Coordinate getCoordinate​(int i)
        Description copied from interface: SegmentString
        Gets the segment string coordinate at a given index.
        Specified by:
        getCoordinate in interface SegmentString
        Parameters:
        i - the coordinate index
        Returns:
        the coordinate at the index
      • isClosed

        public boolean isClosed()
        Description copied from interface: SegmentString
        Tests if a segment string is a closed ring.
        Specified by:
        isClosed in interface SegmentString
        Returns:
        true if the segment string is closed
      • getSegmentOctant

        public int getSegmentOctant​(int index)
        Gets the octant of the segment starting at vertex index.
        Parameters:
        index - the index of the vertex starting the segment. Must not be the last index in the vertex list
        Returns:
        the octant of the segment at the vertex