private static IEnumerable <Intersection> GetIntersections(IEventQueue eventQueue)
    {
        var status = new Status();

        List <Intersection> intersections = new List <Intersection>();

        while (eventQueue.Count > 0)
        {
            var eventPoint = eventQueue.Pop();
            switch (eventPoint.type)
            {
            case EventPoint.EP_START:
                break;

            case EventPoint.EP_INTERSECT:
                break;

            case EventPoint.EP_END:
                break;

            default:
                throw new Exception("Unexpected event point type: " + eventPoint.type);
            }
        }
        return(intersections);
    }