Class Intersection


  • public class Intersection
    extends java.lang.Object
    Contains functions to compute intersections between lines.
    Author:
    Martin Davis
    • Constructor Detail

      • Intersection

        public Intersection()
    • Method Detail

      • intersection

        public static Coordinate intersection​(Coordinate p1,
                                              Coordinate p2,
                                              Coordinate q1,
                                              Coordinate q2)
        Computes the intersection point of two lines. If the lines are parallel or collinear this case is detected and null is returned.

        In general it is not possible to accurately compute the intersection point of two lines, due to numerical roundoff. This is particularly true when the input lines are nearly parallel. This routine uses numerical conditioning on the input values to ensure that the computed value should be very close to the correct value.

        Parameters:
        p1 - an endpoint of line 1
        p2 - an endpoint of line 1
        q1 - an endpoint of line 2
        q2 - an endpoint of line 2
        Returns:
        the intersection point between the lines, if there is one, or null if the lines are parallel or collinear
        See Also:
        CGAlgorithmsDD.intersection(Coordinate, Coordinate, Coordinate, Coordinate)