public IGeometry Node(IGeometry geom) { var geomList = new List<IGeometry>(); geomList.Add(geom); var segStrings = ExtractSegmentStrings(geomList); //Noder sr = new SimpleSnapRounder(pm); var sr = new MCIndexSnapRounder(_pm); sr.ComputeNodes(segStrings); var nodedPtsMap = GetNodedPtsMap(segStrings); var lineReplacer = new GeometryLineReplacer(nodedPtsMap); var geomEditor = new GeometryEditor(); var snapped = geomEditor.Edit(geom, lineReplacer); return snapped; }
public IGeometry Node(IGeometry geom) { var geomList = new List <IGeometry>(); geomList.Add(geom); var segStrings = ExtractSegmentStrings(geomList); //Noder sr = new SimpleSnapRounder(pm); var sr = new MCIndexSnapRounder(_pm); sr.ComputeNodes(segStrings); var nodedPtsMap = GetNodedPtsMap(segStrings); var lineReplacer = new GeometryLineReplacer(nodedPtsMap); var geomEditor = new GeometryEditor(); var snapped = geomEditor.Edit(geom, lineReplacer); return(snapped); }