LineSweeperForPortLocations(IEnumerable <Polyline> obstacles, Point direction, Point coneRsDir, Point coneLsDir,
                             VisibilityGraph visibilityGraph, IEnumerable <Point> portLocations)
     : base(obstacles, direction)
 {
     this.visibilityGraph   = visibilityGraph;
     ConeRightSideDirection = coneRsDir;
     ConeLeftSideDirection  = coneLsDir;
     coneSideComparer       = new ConeSideComparer(this);
     leftConeSides          = new RbTree <ConeSide>(coneSideComparer);
     rightConeSides         = new RbTree <ConeSide>(coneSideComparer);
     PortLocations          = portLocations;
 }