Class IntersectionAdder

    • Field Detail

      • numIntersections

        public int numIntersections
      • numInteriorIntersections

        public int numInteriorIntersections
      • numProperIntersections

        public int numProperIntersections
      • numTests

        public int numTests
    • Constructor Detail

    • Method Detail

      • isAdjacentSegments

        public static boolean isAdjacentSegments​(int i1,
                                                 int i2)
      • getProperIntersectionPoint

        public Coordinate getProperIntersectionPoint()
        Returns:
        the proper intersection point, or null if none was found
      • hasIntersection

        public boolean hasIntersection()
      • hasProperIntersection

        public boolean hasProperIntersection()
        A proper intersection is an intersection which is interior to at least two line segments. Note that a proper intersection is not necessarily in the interior of the entire Geometry, since another edge may have an endpoint equal to the intersection, which according to SFS semantics can result in the point being on the Boundary of the Geometry.
      • hasProperInteriorIntersection

        public boolean hasProperInteriorIntersection()
        A proper interior intersection is a proper intersection which is not contained in the set of boundary nodes set for this SegmentIntersector.
      • hasInteriorIntersection

        public boolean hasInteriorIntersection()
        An interior intersection is an intersection which is in the interior of some segment.
      • processIntersections

        public void processIntersections​(SegmentString e0,
                                         int segIndex0,
                                         SegmentString e1,
                                         int segIndex1)
        This method is called by clients of the SegmentIntersector class to process intersections for two segments of the SegmentStrings being intersected. Note that some clients (such as MonotoneChains) may optimize away this call for segment pairs which they have determined do not intersect (e.g. by an disjoint envelope test).
        Specified by:
        processIntersections in interface SegmentIntersector
      • isDone

        public boolean isDone()
        Always process all intersections
        Specified by:
        isDone in interface SegmentIntersector
        Returns:
        false always