The Bentley-Ottmann Line Sweep works now. Polygon2D.getIntersections can now be used to find the points of intersection between two polygons in O(logN) time.