Click or drag to resize

GeometryBaseGetOverlaps Method

Detects overlapping regions among a set of input objects after they are orthogonally projected onto the supplied plane, and reports what should happen to each input object so that the overlaps can be removed.

Namespace:  Rhino.Geometry
Assembly:  RhinoCommon (in RhinoCommon.dll)
Since: 9.0
Syntax
public static int[] GetOverlaps(
	IEnumerable<GeometryBase> objects,
	Plane plane,
	double tolerance,
	bool wholeCurves,
	IEnumerable<GeometryBase> locked,
	bool lockedExclusive,
	out bool[] entire,
	out ComponentIndex[][] deadSegments,
	out Curve[] replacements
)

Parameters

objects
Type: System.Collections.GenericIEnumerableGeometryBase
The geometry to test for overlaps. Supported types are Curve (curves), Point (single points), and PointCloud (sets of points). Objects of any other type, as well as null or invalid objects, are silently ignored.
plane
Type: Rhino.GeometryPlane
The plane the geometry is orthogonally projected onto before testing. Use Plane.WorldXY to test in the world XY plane (dropping Z).
tolerance
Type: SystemDouble
The overlap distance tolerance, measured in the projected plane.
wholeCurves
Type: SystemBoolean
When true, an overlapping curve is treated as a single unit; when false, curves may be split at segment boundaries so that only the overlapping portions are affected.
locked
Type: System.Collections.GenericIEnumerableGeometryBase
Geometry that participates in the overlap test but is never itself modified. May be null or empty.
lockedExclusive
Type: SystemBoolean
When true, overlaps are only reported where an input object overlaps a locked object; overlaps purely among the input objects are ignored.
entire
Type: SystemBoolean
For each returned object index, true if the entire object is an overlap and should be removed. This out parameter is assigned during this call.
deadSegments
Type: Rhino.GeometryComponentIndex
For each returned object index, the component indices of the segments that overlap and should be removed. This out parameter is assigned during this call.
replacements
Type: Rhino.GeometryCurve
For each returned object index, an optional replacement curve to use in place of the original, or null when no replacement is produced. This out parameter is assigned during this call.

Return Value

Type: Int32
The indices, into objects, of the objects that are affected by an overlap. The entire, deadSegments, and replacements arrays are parallel to the returned array.
Exceptions
ExceptionCondition
ArgumentNullExceptionIf objects is null.
See Also