/// <summary>
 ///
 /// </summary>
 /// <param name="g"></param>
 /// <param name="li"></param>
 /// <param name="includeProper"></param>
 /// <returns></returns>
 public SegmentIntersector ComputeEdgeIntersections(GeometryGraph g,
     LineIntersector li, bool includeProper)
 {
     SegmentIntersector si = new SegmentIntersector(li, includeProper, true);
     si.SetBoundaryNodes(BoundaryNodes, g.BoundaryNodes);
     EdgeSetIntersector esi = CreateEdgeSetIntersector();
     esi.ComputeIntersections(Edges, g.Edges, si);
     return si;
 }
Exemple #2
0
        }         // public SegmentIntersector computeSelfNodes(LineIntersector li)

        /// <summary>
        ///
        /// </summary>
        /// <param name="g"></param>
        /// <param name="li"></param>
        /// <param name="includeProper"></param>
        /// <returns></returns>
        public SegmentIntersector ComputeEdgeIntersections(
            GeometryGraph g,
            LineIntersector li,
            bool includeProper)
        {
            SegmentIntersector si = new SegmentIntersector(li, includeProper, true);

            si.SetBoundaryNodes(GetBoundaryNodes(), g.GetBoundaryNodes());

            EdgeSetIntersector esi = new SimpleMCSweepLineIntersector();

            esi.ComputeIntersections(_edges, g.Edges, si);

            /*
             * foreach ( object obj in g )
             * {
             *      Edge e = (Edge) obj;
             *      Trace.WriteLine( e.EdgeIntersectionList.ToString() );
             * }
             */
            return(si);
        }         // public SegmentIntersector ComputeEdgeIntersections(...