Table of Contents

Method TrySplitBy

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

TrySplitBy(GeoPoint3, out GeoPolylineArc3[])

Cuts the loop at a point on it.

public bool TrySplitBy(GeoPoint3 point, out GeoPolylineArc3[] pieces)

Parameters

point GeoPoint3

The point to cut at; it has to be on the loop.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

Returns

bool

true when the cut was made; otherwise, false, and the loop comes back opened at its start.

TrySplitBy(GeoPoint3, out GeoPolylineArc3[], Tolerance)

Cuts the loop at a point on it, within a tolerance.

public bool TrySplitBy(GeoPoint3 point, out GeoPolylineArc3[] pieces, Tolerance tolerance)

Parameters

point GeoPoint3

The point to cut at; it has to be on the loop.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

tolerance Tolerance

The tolerance.

Returns

bool

true when the cut was made; otherwise, false.

TrySplitBy(GeoPlane3, out GeoPolylineArc3[])

Cuts the loop wherever it crosses a plane.

public bool TrySplitBy(GeoPlane3 cutter, out GeoPolylineArc3[] pieces)

Parameters

cutter GeoPlane3

The plane to cut at.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

Returns

bool

true when any cut was made; otherwise, false.

TrySplitBy(GeoPlane3, out GeoPolylineArc3[], Tolerance)

Cuts the loop wherever it crosses a plane, within a tolerance.

public bool TrySplitBy(GeoPlane3 cutter, out GeoPolylineArc3[] pieces, Tolerance tolerance)

Parameters

cutter GeoPlane3

The plane to cut at.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

tolerance Tolerance

The tolerance.

Returns

bool

true when any cut was made; otherwise, false.

Remarks

A plane through a stirrup cuts it twice, so the usual answer is two chains.

TrySplitBy(GeoFace3, out GeoPolylineArc3[])

Cuts the loop wherever it crosses a face.

public bool TrySplitBy(GeoFace3 cutter, out GeoPolylineArc3[] pieces)

Parameters

cutter GeoFace3

The face to cut at; only its material cuts.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

Returns

bool

true when any cut was made; otherwise, false.

TrySplitBy(GeoFace3, out GeoPolylineArc3[], Tolerance)

Cuts the loop wherever it crosses a face, within a tolerance.

public bool TrySplitBy(GeoFace3 cutter, out GeoPolylineArc3[] pieces, Tolerance tolerance)

Parameters

cutter GeoFace3

The face to cut at; only its material cuts.

pieces GeoPolylineArc3[]

The open chains the loop came apart into.

tolerance Tolerance

The tolerance.

Returns

bool

true when any cut was made; otherwise, false.

TrySplitBy(GeoSolid3, out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses the surface of a solid, telling what is in from what is out.

public bool TrySplitBy(GeoSolid3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutter GeoSolid3

The body to cut against.

inside GeoPolylineArc3[]

The chains within the material.

outside GeoPolylineArc3[]

The chains outside it.

Returns

bool

true when any cut was made; otherwise, false.

TrySplitBy(GeoSolid3, out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses the surface of a solid, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoSolid3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutter GeoSolid3

The body to cut against.

inside GeoPolylineArc3[]

The chains within the material.

outside GeoPolylineArc3[]

The chains outside it.

tolerance Tolerance

The tolerance.

Returns

bool

true when any cut was made; otherwise, false.

Remarks

This is a stirrup trimmed to a member: what is in the concrete and what is sticking out of it.

TrySplitBy(GeoObb3, out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses a box, telling what is in from what is out.

public bool TrySplitBy(GeoObb3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutter GeoObb3
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]

Returns

bool

Remarks

Which side a piece is on is settled at its middle and never at an end, because every end is on a surface by construction and a surface belongs to neither side. A box is asked as itself rather than as the body it bounds: the same answer by a shorter road.

TrySplitBy(GeoObb3, out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses a box, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoObb3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutter GeoObb3
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]
tolerance Tolerance

Returns

bool

TrySplitBy(GeoAabb3, out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses a square box, telling what is in from what is out.

public bool TrySplitBy(GeoAabb3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutter GeoAabb3
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]

Returns

bool

Remarks

Which side a piece is on is settled at its middle and never at an end, because every end is on a surface by construction and a surface belongs to neither side. A box is asked as itself rather than as the body it bounds: the same answer by a shorter road.

TrySplitBy(GeoAabb3, out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses a square box, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoAabb3 cutter, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutter GeoAabb3
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]
tolerance Tolerance

Returns

bool

TrySplitBy(GeoSolid3[], out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses several bodies, telling what is in from what is out.

public bool TrySplitBy(GeoSolid3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutters GeoSolid3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]

Returns

bool

Remarks

Which side a piece is on is settled at its middle and never at an end, because every end is on a surface by construction and a surface belongs to neither side. A piece is inside when it is inside any one of them, so overlapping cutters behave as the one region they cover, and a gap in the array is passed over.

TrySplitBy(GeoSolid3[], out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses several bodies, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoSolid3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutters GeoSolid3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]
tolerance Tolerance

Returns

bool

TrySplitBy(GeoObb3[], out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses several boxes, telling what is in from what is out.

public bool TrySplitBy(GeoObb3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutters GeoObb3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]

Returns

bool

Remarks

Which side a piece is on is settled at its middle and never at an end, because every end is on a surface by construction and a surface belongs to neither side. A piece is inside when it is inside any one of them, so overlapping cutters behave as the one region they cover, and a gap in the array is passed over.

TrySplitBy(GeoObb3[], out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses several boxes, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoObb3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutters GeoObb3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]
tolerance Tolerance

Returns

bool

TrySplitBy(GeoAabb3[], out GeoPolylineArc3[], out GeoPolylineArc3[])

Cuts the loop where it crosses several square boxes, telling what is in from what is out.

public bool TrySplitBy(GeoAabb3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside)

Parameters

cutters GeoAabb3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]

Returns

bool

Remarks

Which side a piece is on is settled at its middle and never at an end, because every end is on a surface by construction and a surface belongs to neither side. A piece is inside when it is inside any one of them, so overlapping cutters behave as the one region they cover, and a gap in the array is passed over.

TrySplitBy(GeoAabb3[], out GeoPolylineArc3[], out GeoPolylineArc3[], Tolerance)

Cuts the loop where it crosses several square boxes, telling what is in from what is out, within a tolerance.

public bool TrySplitBy(GeoAabb3[] cutters, out GeoPolylineArc3[] inside, out GeoPolylineArc3[] outside, Tolerance tolerance)

Parameters

cutters GeoAabb3[]
inside GeoPolylineArc3[]
outside GeoPolylineArc3[]
tolerance Tolerance

Returns

bool