Class MCIndexSnapRounder
Uses Snap Rounding to compute a rounded, fully noded arrangement from a set of ISegmentStrings. Implements the Snap Rounding technique described in papers by Hobby, Guibas and Marimont, and Goodrich et al. Snap Rounding assumes that all vertices lie on a uniform grid; hence the precision model of the input must be fixed precision, and all the input vertices must be rounded to that precision.
This implementation uses a monotone chains and a spatial index to speed up the intersection tests.
KNOWN BUGS
This implementation is not fully robust. instead.Implements
Inherited Members
Namespace: NetTopologySuite.Noding.Snapround
Assembly: NetTopologySuite.dll
Syntax
[Obsolete("Not robust. Use SnapRoundingNoder instead.")]
public class MCIndexSnapRounder : INoder
Constructors
| Improve this Doc View SourceMCIndexSnapRounder(PrecisionModel)
Initializes a new instance of the MCIndexSnapRounder class.
Declaration
public MCIndexSnapRounder(PrecisionModel pm)
Parameters
Type | Name | Description |
---|---|---|
PrecisionModel | pm | The PrecisionModel to use. |
Methods
| Improve this Doc View SourceComputeNodes(IList<ISegmentString>)
Computes the noding for a collection of ISegmentStrings. Some Noders may add all these nodes to the input ISegmentStrings; others may only add some or none at all.
Declaration
public void ComputeNodes(IList<ISegmentString> inputSegmentStrings)
Parameters
Type | Name | Description |
---|---|---|
IList<ISegmentString> | inputSegmentStrings |
ComputeVertexSnaps(IList<ISegmentString>)
Snaps segments to all vertices
Declaration
public void ComputeVertexSnaps(IList<ISegmentString> edges)
Parameters
Type | Name | Description |
---|---|---|
IList<ISegmentString> | edges | The list of segment strings to snap together |
GetNodedSubstrings()
Returns a IList<T> of fully noded ISegmentStrings. The ISegmentStrings have the same context as their parent.
Declaration
public IList<ISegmentString> GetNodedSubstrings()
Returns
Type | Description |
---|---|
IList<ISegmentString> |