Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.vividsolutions.jts.noding
Class SegmentString

    java.lang.Object
      com.vividsolutions.jts.noding.SegmentString

public class SegmentString
extends java.lang.Object

Represents a list of contiguous line segments, and supports noding the segments. The line segments are represented by an array of `Coordinate`s. Intended to optimize the noding of contiguous segments by reducing the number of allocated objects. SegmentStrings can carry a context object, which is useful for preserving topological or parentage information. All noded substrings are initialized with the same context object.

Version:
  1.7

Constructor Summary
`SegmentString(Coordinate[] pts, java.lang.Object data)` Creates a new segment string from a list of vertices.

Method Summary
`void` | `addIntersection(Coordinate intPt, int segmentIndex)`
`void` | `addIntersection(LineIntersector li, int segmentIndex, int geomIndex, int intIndex)` Add an SegmentNode for intersection intIndex.
`void` | `addIntersections(LineIntersector li, int segmentIndex, int geomIndex)` Adds EdgeIntersections for one or both intersections found for a segment of an edge to the edge intersection list.
`Coordinate` | `getCoordinate(int i)`
`Coordinate[]` | `getCoordinates()`
`java.lang.Object` | `getData()` Gets the user-defined data for this segment string.
`static java.util.List` | `getNodedSubstrings(java.util.Collection segStrings)`
`static void` | `getNodedSubstrings(java.util.Collection segStrings, java.util.Collection resultEdgelist)`
`SegmentNodeList` | `getNodeList()`
`int` | `getSegmentOctant(int index)` Gets the octant of the segment starting at vertex `index`.
`boolean` | `isClosed()`
`void` | `setData(java.lang.Object data)` Sets the user-defined data for this segment string.
`int` | `size()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### SegmentString

    public SegmentString(Coordinate[] pts,
                         java.lang.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

### getNodedSubstrings

    public static java.util.List getNodedSubstrings(java.util.Collection segStrings)

### getNodedSubstrings

    public static void getNodedSubstrings(java.util.Collection segStrings,
                                          java.util.Collection resultEdgelist)

### getData

    public java.lang.Object getData()

  Gets the user-defined data for this segment string.

  Returns:
    the user-defined data

### setData

    public void setData(java.lang.Object data)

  Sets the user-defined data for this segment string.

  Parameters:
    `data` - an Object containing user-defined data

### getNodeList

    public SegmentNodeList getNodeList()

### size

    public int size()

### getCoordinate

    public Coordinate getCoordinate(int i)

### getCoordinates

    public Coordinate[] getCoordinates()

### isClosed

    public boolean isClosed()

### 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

### addIntersections

    public void addIntersections(LineIntersector li,
                                 int segmentIndex,
                                 int geomIndex)

  Adds EdgeIntersections for one or both intersections found for a segment of an edge to the edge intersection list.

### addIntersection

    public void addIntersection(LineIntersector li,
                                int segmentIndex,
                                int geomIndex,
                                int intIndex)

  Add an SegmentNode for intersection intIndex. An intersection that falls exactly on a vertex of the SegmentString is normalized to use the higher of the two possible segmentIndexes

### addIntersection

    public void addIntersection(Coordinate intPt,
                                int segmentIndex)

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD