Class EdgeIntersectionList


  • public class EdgeIntersectionList
    extends Object
    A list of edge intersections along an Edge. Implements splitting an edge with intersections into multiple resultant edges.
    Version:
    1.7
    • Constructor Detail

      • EdgeIntersectionList

        public EdgeIntersectionList​(Edge edge)
    • Method Detail

      • add

        public EdgeIntersection add​(Coordinate intPt,
                                    int segmentIndex,
                                    double dist)
        Adds an intersection into the list, if it isn't already there. The input segmentIndex and dist are expected to be normalized.
        Parameters:
        intPt - Point of intersection
        segmentIndex - Index of the containing line segment in the parent edge
        dist - Edge distance of this point along the containing line segment
        Returns:
        the EdgeIntersection found or added
      • iterator

        public Iterator iterator()
        Returns an iterator of EdgeIntersections
        Returns:
        an Iterator of EdgeIntersections
      • isIntersection

        public boolean isIntersection​(Coordinate pt)
        Tests if the given point is an edge intersection
        Parameters:
        pt - the point to test
        Returns:
        true if the point is an intersection
      • addEndpoints

        public void addEndpoints()
        Adds entries for the first and last points of the edge to the list
      • addSplitEdges

        public void addSplitEdges​(List edgeList)
        Creates new edges for all the edges that the intersections in this list split the parent edge into. Adds the edges to the input list (this is so a single list can be used to accumulate all split edges for a Geometry).
        Parameters:
        edgeList - a list of EdgeIntersections