Table of Contents

Class MCIndexSnapRounder

Namespace
NetTopologySuite.Noding.Snapround
Assembly
NetTopologySuite.dll

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.
[Obsolete("Not robust. Use SnapRoundingNoder instead.")]
public class MCIndexSnapRounder : INoder
Inheritance
MCIndexSnapRounder
Implements
Inherited Members

Constructors

MCIndexSnapRounder(PrecisionModel)

Initializes a new instance of the MCIndexSnapRounder class.

public MCIndexSnapRounder(PrecisionModel pm)

Parameters

pm PrecisionModel

The PrecisionModel to use.

Methods

ComputeNodes(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.

public void ComputeNodes(IList<ISegmentString> inputSegmentStrings)

Parameters

inputSegmentStrings IList<ISegmentString>

ComputeVertexSnaps(IList<ISegmentString>)

Snaps segments to all vertices

public void ComputeVertexSnaps(IList<ISegmentString> edges)

Parameters

edges IList<ISegmentString>

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.

public IList<ISegmentString> GetNodedSubstrings()

Returns

IList<ISegmentString>