The meeting point, or null if the segment misses the polygon entirely.
Description
Find where a line segment first meets a polygon. A segment lying wholly inside the polygon
crosses no edge, so one of its endpoints is returned instead — meaning a non-null result means "touches",
not strictly "crosses an edge".
segmentIntersectsPolygon