Пример #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="edge"></param>
        /// <param name="edgeSet"></param>
        private void Add(Edge edge, object edgeSet)
        {
            var pts = edge.Coordinates;

            for (int i = 0; i < pts.Length - 1; i++)
            {
                var ss          = new SweepLineSegment(edge, i);
                var insertEvent = new SweepLineEvent(edgeSet, ss.MinX, null);
                _events.Add(insertEvent);
                _events.Add(new SweepLineEvent(ss.MaxX, insertEvent));
            }
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="ss"></param>
 /// <param name="si"></param>
 public void ComputeIntersections(SweepLineSegment ss, SegmentIntersector si)
 {
     si.AddIntersections(edge, ptIndex, ss.edge, ss.ptIndex);
 }