Пример #1
0
        /// <summary>
        /// Node the input segment strings once
        /// and create the split edges between the nodes.
        /// </summary>
        /// <param name="segStrings"></param>
        /// <param name="numInteriorIntersections"></param>
        private void Node(IList segStrings, int[] numInteriorIntersections)
        {
            IntersectionAdder si    = new IntersectionAdder(_li);
            McIndexNoder      noder = new McIndexNoder(si);

            noder.ComputeNodes(segStrings);
            _nodedSegStrings            = noder.GetNodedSubstrings();
            numInteriorIntersections[0] = si.NumInteriorIntersections;
        }
Пример #2
0
 /// <summary>
 /// Node the input segment strings once
 /// and create the split edges between the nodes.
 /// </summary>
 /// <param name="segStrings"></param>
 /// <param name="numInteriorIntersections"></param>
 private void Node(IList segStrings, int[] numInteriorIntersections)
 {
     IntersectionAdder si = new IntersectionAdder(_li);
     McIndexNoder noder = new McIndexNoder(si);
     noder.ComputeNodes(segStrings);
     _nodedSegStrings = noder.GetNodedSubstrings();
     numInteriorIntersections[0] = si.NumInteriorIntersections;
 }
Пример #3
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="precisionModel"></param>
 /// <returns></returns>
 private static INoder GetNoder(PrecisionModel precisionModel)
 {
     // otherwise use a fast (but non-robust) noder
     LineIntersector li = new RobustLineIntersector();
     li.PrecisionModel = precisionModel;
     McIndexNoder noder = new McIndexNoder(new IntersectionAdder(li));
     return noder;
 }