The problem with SlowEventQueue is that LineSweep requires no duplicate reporting of intersections. For this to work, you must be careful not to insert the same point multiple times into the event queue. This could happen if there are numerous pairs of lines that intersect at the same intersection point (an easy case to construct). Thus the insert method actually behaves more like merge.