Table of Contents

Method GetIntersections

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

GetIntersections(GeoAabb3)

Gets every point where this segment crosses the surface of an axis-aligned box, using the default tolerance.

public GeoPoint3[] GetIntersections(GeoAabb3 box)

Parameters

box GeoAabb3

Returns

GeoPoint3[]

GetIntersections(GeoAabb3, Tolerance)

Gets every point where this segment crosses the surface of an axis-aligned box, within a tolerance.

public GeoPoint3[] GetIntersections(GeoAabb3 box, Tolerance tolerance)

Parameters

box GeoAabb3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoObb3)

Gets every point where this segment crosses the surface of an oriented box, using the default tolerance.

public GeoPoint3[] GetIntersections(GeoObb3 box)

Parameters

box GeoObb3

Returns

GeoPoint3[]

GetIntersections(GeoObb3, Tolerance)

Gets every point where this segment crosses the surface of an oriented box, within a tolerance.

public GeoPoint3[] GetIntersections(GeoObb3 box, Tolerance tolerance)

Parameters

box GeoObb3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoSolid3)

Gets every point where this segment crosses the surface of a solid, using the default tolerance.

public GeoPoint3[] GetIntersections(GeoSolid3 solid)

Parameters

solid GeoSolid3

Returns

GeoPoint3[]

GetIntersections(GeoSolid3, Tolerance)

Gets every point where this segment crosses the surface of a solid, within a tolerance.

public GeoPoint3[] GetIntersections(GeoSolid3 solid, Tolerance tolerance)

Parameters

solid GeoSolid3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoArc3)

Gets every point where an arc crosses this segment, using the default tolerance.

public GeoPoint3[] GetIntersections(GeoArc3 arc)

Parameters

arc GeoArc3

Returns

GeoPoint3[]

GetIntersections(GeoArc3, Tolerance)

Gets every point where an arc crosses this segment, within a tolerance.

public GeoPoint3[] GetIntersections(GeoArc3 arc, Tolerance tolerance)

Parameters

arc GeoArc3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoCircle3)

Gets every point where a circle crosses this segment, using the default tolerance.

public GeoPoint3[] GetIntersections(GeoCircle3 circle)

Parameters

circle GeoCircle3

Returns

GeoPoint3[]

GetIntersections(GeoCircle3, Tolerance)

Gets every point where a circle crosses this segment, within a tolerance.

public GeoPoint3[] GetIntersections(GeoCircle3 circle, Tolerance tolerance)

Parameters

circle GeoCircle3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoPlane3)

Gets every point where this segment crosses a plane.

public GeoPoint3[] GetIntersections(GeoPlane3 plane)

Parameters

plane GeoPlane3

Returns

GeoPoint3[]

GetIntersections(GeoPlane3, Tolerance)

Gets every point where this segment crosses a plane, within a tolerance.

public GeoPoint3[] GetIntersections(GeoPlane3 plane, Tolerance tolerance)

Parameters

plane GeoPlane3

The plane.

tolerance Tolerance

The tolerance.

Returns

GeoPoint3[]

Remarks

A segment meets a plane at a single point, and this is that point wrapped so that it reads like every other crossing. It is what lets a GeoEdge3 be handed on as whichever of a segment or an arc it is, since an arc can meet one twice.

GetIntersections(GeoTriangle3)

Gets every point where this segment crosses a triangle.

public GeoPoint3[] GetIntersections(GeoTriangle3 triangle)

Parameters

triangle GeoTriangle3

Returns

GeoPoint3[]

GetIntersections(GeoTriangle3, Tolerance)

Gets every point where this segment crosses a triangle, within a tolerance.

public GeoPoint3[] GetIntersections(GeoTriangle3 triangle, Tolerance tolerance)

Parameters

triangle GeoTriangle3

The triangle.

tolerance Tolerance

The tolerance.

Returns

GeoPoint3[]

Remarks

A segment meets a triangle at a single point, and this is that point wrapped so that it reads like every other crossing. It is what lets a GeoEdge3 be handed on as whichever of a segment or an arc it is, since an arc can meet one twice.

GetIntersections(GeoPolygon3)

Gets every point where this segment crosses a polygon.

public GeoPoint3[] GetIntersections(GeoPolygon3 polygon)

Parameters

polygon GeoPolygon3

Returns

GeoPoint3[]

GetIntersections(GeoPolygon3, Tolerance)

Gets every point where this segment crosses a polygon, within a tolerance.

public GeoPoint3[] GetIntersections(GeoPolygon3 polygon, Tolerance tolerance)

Parameters

polygon GeoPolygon3

The polygon.

tolerance Tolerance

The tolerance.

Returns

GeoPoint3[]

Remarks

A segment meets a polygon at a single point, and this is that point wrapped so that it reads like every other crossing. It is what lets a GeoEdge3 be handed on as whichever of a segment or an arc it is, since an arc can meet one twice.

GetIntersections(GeoFace3)

Gets every point where this segment crosses a face.

public GeoPoint3[] GetIntersections(GeoFace3 face)

Parameters

face GeoFace3

Returns

GeoPoint3[]

GetIntersections(GeoFace3, Tolerance)

Gets every point where this segment crosses a face, within a tolerance.

public GeoPoint3[] GetIntersections(GeoFace3 face, Tolerance tolerance)

Parameters

face GeoFace3

The face.

tolerance Tolerance

The tolerance.

Returns

GeoPoint3[]

Remarks

A segment meets a face at a single point, and this is that point wrapped so that it reads like every other crossing. It is what lets a GeoEdge3 be handed on as whichever of a segment or an arc it is, since an arc can meet one twice.

GetIntersections(GeoLine3)

Gets where this segment crosses a segment, as a list.

public GeoPoint3[] GetIntersections(GeoLine3 line)

Parameters

line GeoLine3

Returns

GeoPoint3[]

Remarks

Two straight pieces meet at one place, so the list is one long or empty. It is a list because a GeoEdge3 has to be able to ask the same question of a segment and of a bend.

There is deliberately no TryIntersectWith twin taking an array here: this type already has one handing back a single point, and a second one differing only in the shape of its out would make every existing call to it ambiguous. GetIntersection(GeoLine3) is the single-point reading and this is the list reading of the same answer.

GetIntersections(GeoLine3, Tolerance)

Gets where this segment crosses a segment, as a list, within a tolerance.

public GeoPoint3[] GetIntersections(GeoLine3 line, Tolerance tolerance)

Parameters

line GeoLine3
tolerance Tolerance

Returns

GeoPoint3[]

GetIntersections(GeoRay3)

Gets where this segment crosses a ray, as a list.

public GeoPoint3[] GetIntersections(GeoRay3 ray)

Parameters

ray GeoRay3

Returns

GeoPoint3[]

Remarks

Two straight pieces meet at one place, so the list is one long or empty. It is a list because a GeoEdge3 has to be able to ask the same question of a segment and of a bend.

GetIntersections(GeoRay3, Tolerance)

Gets where this segment crosses a ray, as a list, within a tolerance.

public GeoPoint3[] GetIntersections(GeoRay3 ray, Tolerance tolerance)

Parameters

ray GeoRay3
tolerance Tolerance

Returns

GeoPoint3[]