Table of Contents

Class Projection2

Namespace
GeometryHelper.Core
Assembly
GeometryHelper.dll

The shortest segment joining a chain or loop that may curve to something else.

public static class Projection2
Inheritance
Projection2
Inherited Members

Remarks

Both ends of the segment sit on a boundary, so a shape lying wholly inside a closed one still reports the gap out to its outline rather than nothing at all. Distance2 takes the opposite view and reads a closed shape as a filled region, so the two deliberately disagree for that pair; everywhere else the segment is exactly as long as the distance.

Arcs are measured as arcs, not cut into pieces first, so the answer is exact. Where the two boundaries cross, the segment has no length and sits at the crossing.

Methods

GetShortestLineTo(GeoCircle2, GeoArc2)

Gets the shortest segment joining a circle to an arc.

GetShortestLineTo(GeoCircle2, GeoArc2, Tolerance)

Gets the shortest segment joining a circle to an arc, within a tolerance.

GetShortestLineTo(GeoCircle2, GeoCircle2)

Finds the shortest line segment connecting a point on the circumference of c1 to a point on the circumference of c2 using default tolerance.

GetShortestLineTo(GeoCircle2, GeoCircle2, Tolerance)

Finds the shortest line segment connecting a point on the circumference of c1 to a point on the circumference of c2 within tolerance.

GetShortestLineTo(GeoCircle2, GeoLine2)

Finds the shortest line segment connecting a point on the circumference of circle to a point on line using default tolerance.

GetShortestLineTo(GeoCircle2, GeoLine2, Tolerance)

Finds the shortest line segment connecting a point on the circumference of circle to a point on line within tolerance.

GetShortestLineTo(GeoCircle2, GeoPolygon2)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the boundary of poly using default tolerance.

GetShortestLineTo(GeoCircle2, GeoPolygon2, Tolerance)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the boundary of poly within tolerance.

GetShortestLineTo(GeoCircle2, GeoPolygonArc2)

Gets the shortest segment joining a circle to a curved loop.

GetShortestLineTo(GeoCircle2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a circle to a curved loop, within a tolerance.

GetShortestLineTo(GeoCircle2, GeoPolyline2)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the polyline path of polyline using default tolerance.

GetShortestLineTo(GeoCircle2, GeoPolyline2, Tolerance)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the polyline path of polyline within tolerance.

GetShortestLineTo(GeoCircle2, GeoPolylineArc2)

Gets the shortest segment joining a circle to a curved chain.

GetShortestLineTo(GeoCircle2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a circle to a curved chain, within a tolerance.

GetShortestLineTo(GeoCircle2, GeoRectangle2)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the boundary of rect using default tolerance.

GetShortestLineTo(GeoCircle2, GeoRectangle2, Tolerance)

Finds the shortest line segment connecting a point on the circumference of circle to a point on the boundary of rect within tolerance.

GetShortestLineTo(GeoLine2, GeoArc2)

Gets the shortest segment joining a segment to an arc.

GetShortestLineTo(GeoLine2, GeoArc2, Tolerance)

Gets the shortest segment joining a segment to an arc, within a tolerance.

GetShortestLineTo(GeoLine2, GeoCircle2)

Finds the shortest line segment connecting a point on line to a point on the circumference of circle using default tolerance.

GetShortestLineTo(GeoLine2, GeoCircle2, Tolerance)

Finds the shortest line segment connecting a point on line to a point on the circumference of circle within tolerance.

GetShortestLineTo(GeoLine2, GeoLine2)

Finds the shortest line segment connecting a point on line1 to a point on line2 using default tolerance.

GetShortestLineTo(GeoLine2, GeoLine2, Tolerance)

Finds the shortest line segment connecting a point on line1 to a point on line2 within tolerance.

GetShortestLineTo(GeoLine2, GeoPolygon2)

Finds the shortest line segment connecting a point on line to a point on the boundary of poly using default tolerance.

GetShortestLineTo(GeoLine2, GeoPolygon2, Tolerance)

Finds the shortest line segment connecting a point on line to a point on the boundary of poly within tolerance.

GetShortestLineTo(GeoLine2, GeoPolygonArc2)

Gets the shortest segment joining a segment to a curved loop.

GetShortestLineTo(GeoLine2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a segment to a curved loop, within a tolerance.

GetShortestLineTo(GeoLine2, GeoPolyline2)

Finds the shortest line segment connecting a point on line to a point on the polyline path of polyline using default tolerance.

GetShortestLineTo(GeoLine2, GeoPolyline2, Tolerance)

Finds the shortest line segment connecting a point on line to a point on the polyline path of polyline within tolerance.

GetShortestLineTo(GeoLine2, GeoPolylineArc2)

Gets the shortest segment joining a segment to a curved chain.

GetShortestLineTo(GeoLine2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a segment to a curved chain, within a tolerance.

GetShortestLineTo(GeoLine2, GeoRectangle2)

Finds the shortest line segment connecting a point on line to a point on the boundary of rect using default tolerance.

GetShortestLineTo(GeoLine2, GeoRectangle2, Tolerance)

Finds the shortest line segment connecting a point on line to a point on the boundary of rect within tolerance.

GetShortestLineTo(GeoPolygon2, GeoArc2)

Gets the shortest segment joining a polygon to an arc.

GetShortestLineTo(GeoPolygon2, GeoArc2, Tolerance)

Gets the shortest segment joining a polygon to an arc, within a tolerance.

GetShortestLineTo(GeoPolygon2, GeoCircle2)

Finds the shortest line segment connecting a point on the boundary of poly to a point on the circumference of circle using default tolerance.

GetShortestLineTo(GeoPolygon2, GeoCircle2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of poly to a point on the circumference of circle within tolerance.

GetShortestLineTo(GeoPolygon2, GeoLine2)

Finds the shortest line segment connecting a point on the boundary of poly to a point on line using default tolerance.

GetShortestLineTo(GeoPolygon2, GeoLine2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of poly to a point on line within tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolygon2)

Finds the shortest line segment connecting a point on the boundary of p1 to a point on the boundary of p2 using default tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolygon2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of p1 to a point on the boundary of p2 within tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolygonArc2)

Gets the shortest segment joining a polygon to a curved loop.

GetShortestLineTo(GeoPolygon2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a polygon to a curved loop, within a tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolyline2)

Finds the shortest line segment connecting a point on the boundary of poly to a point on polyline using default tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolyline2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of poly to a point on polyline within tolerance.

GetShortestLineTo(GeoPolygon2, GeoPolylineArc2)

Gets the shortest segment joining a polygon to a curved chain.

GetShortestLineTo(GeoPolygon2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a polygon to a curved chain, within a tolerance.

GetShortestLineTo(GeoPolygon2, GeoRectangle2)

Finds the shortest line segment connecting a point on the boundary of poly to a point on the boundary of rect using default tolerance.

GetShortestLineTo(GeoPolygon2, GeoRectangle2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of poly to a point on the boundary of rect within tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoArc2)

Gets the shortest segment joining a curved loop to an arc.

GetShortestLineTo(GeoPolygonArc2, GeoArc2, Tolerance)

Gets the shortest segment joining a curved loop to an arc, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoCircle2)

Gets the shortest segment joining a curved loop to a circle.

GetShortestLineTo(GeoPolygonArc2, GeoCircle2, Tolerance)

Gets the shortest segment joining a curved loop to a circle, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoLine2)

Gets the shortest segment joining a curved loop to a segment.

GetShortestLineTo(GeoPolygonArc2, GeoLine2, Tolerance)

Gets the shortest segment joining a curved loop to a segment, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoPolygon2)

Gets the shortest segment joining a curved loop to a polygon.

GetShortestLineTo(GeoPolygonArc2, GeoPolygon2, Tolerance)

Gets the shortest segment joining a curved loop to a polygon, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoPolygonArc2)

Gets the shortest segment joining a curved loop to another curved loop.

GetShortestLineTo(GeoPolygonArc2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a curved loop to another curved loop, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoPolyline2)

Gets the shortest segment joining a curved loop to a polyline.

GetShortestLineTo(GeoPolygonArc2, GeoPolyline2, Tolerance)

Gets the shortest segment joining a curved loop to a polyline, within a tolerance.

GetShortestLineTo(GeoPolygonArc2, GeoPolylineArc2)

Gets the shortest segment joining a curved loop to a curved chain.

GetShortestLineTo(GeoPolygonArc2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a curved loop to a curved chain, within a tolerance.

GetShortestLineTo(GeoPolyline2, GeoArc2)

Gets the shortest segment joining a polyline to an arc.

GetShortestLineTo(GeoPolyline2, GeoArc2, Tolerance)

Gets the shortest segment joining a polyline to an arc, within a tolerance.

GetShortestLineTo(GeoPolyline2, GeoCircle2)

Finds the shortest line segment connecting a point on polyline to a point on the circumference of circle using default tolerance.

GetShortestLineTo(GeoPolyline2, GeoCircle2, Tolerance)

Finds the shortest line segment connecting a point on polyline to a point on the circumference of circle within tolerance.

GetShortestLineTo(GeoPolyline2, GeoLine2)

Finds the shortest line segment connecting a point on polyline to a point on line using default tolerance.

GetShortestLineTo(GeoPolyline2, GeoLine2, Tolerance)

Finds the shortest line segment connecting a point on polyline to a point on line within tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolygon2)

Finds the shortest line segment connecting a point on polyline to a point on the boundary of poly using default tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolygon2, Tolerance)

Finds the shortest line segment connecting a point on polyline to a point on the boundary of poly within tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolygonArc2)

Gets the shortest segment joining a polyline to a curved loop.

GetShortestLineTo(GeoPolyline2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a polyline to a curved loop, within a tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolyline2)

Finds the shortest line segment connecting a point on p1 to a point on p2 using default tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolyline2, Tolerance)

Finds the shortest line segment connecting a point on p1 to a point on p2 within tolerance.

GetShortestLineTo(GeoPolyline2, GeoPolylineArc2)

Gets the shortest segment joining a polyline to a curved chain.

GetShortestLineTo(GeoPolyline2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a polyline to a curved chain, within a tolerance.

GetShortestLineTo(GeoPolyline2, GeoRectangle2)

Finds the shortest line segment connecting a point on polyline to a point on the boundary of rect using default tolerance.

GetShortestLineTo(GeoPolyline2, GeoRectangle2, Tolerance)

Finds the shortest line segment connecting a point on polyline to a point on the boundary of rect within tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoArc2)

Gets the shortest segment joining a curved chain to an arc.

GetShortestLineTo(GeoPolylineArc2, GeoArc2, Tolerance)

Gets the shortest segment joining a curved chain to an arc, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoCircle2)

Gets the shortest segment joining a curved chain to a circle.

GetShortestLineTo(GeoPolylineArc2, GeoCircle2, Tolerance)

Gets the shortest segment joining a curved chain to a circle, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoLine2)

Gets the shortest segment joining a curved chain to a segment.

GetShortestLineTo(GeoPolylineArc2, GeoLine2, Tolerance)

Gets the shortest segment joining a curved chain to a segment, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoPolygon2)

Gets the shortest segment joining a curved chain to a polygon.

GetShortestLineTo(GeoPolylineArc2, GeoPolygon2, Tolerance)

Gets the shortest segment joining a curved chain to a polygon, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoPolygonArc2)

Gets the shortest segment joining a curved chain to a curved loop.

GetShortestLineTo(GeoPolylineArc2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a curved chain to a curved loop, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoPolyline2)

Gets the shortest segment joining a curved chain to a polyline.

GetShortestLineTo(GeoPolylineArc2, GeoPolyline2, Tolerance)

Gets the shortest segment joining a curved chain to a polyline, within a tolerance.

GetShortestLineTo(GeoPolylineArc2, GeoPolylineArc2)

Gets the shortest segment joining a curved chain to another curved chain.

GetShortestLineTo(GeoPolylineArc2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a curved chain to another curved chain, within a tolerance.

GetShortestLineTo(GeoRectangle2, GeoArc2)

Gets the shortest segment joining a rectangle to an arc.

GetShortestLineTo(GeoRectangle2, GeoArc2, Tolerance)

Gets the shortest segment joining a rectangle to an arc, within a tolerance.

GetShortestLineTo(GeoRectangle2, GeoCircle2)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the circumference of circle using default tolerance.

GetShortestLineTo(GeoRectangle2, GeoCircle2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the circumference of circle within tolerance.

GetShortestLineTo(GeoRectangle2, GeoLine2)

Finds the shortest line segment connecting a point on the boundary of rect to a point on line using default tolerance.

GetShortestLineTo(GeoRectangle2, GeoLine2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of rect to a point on line within tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolygon2)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the boundary of poly using default tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolygon2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the boundary of poly within tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolygonArc2)

Gets the shortest segment joining a rectangle to a curved loop.

GetShortestLineTo(GeoRectangle2, GeoPolygonArc2, Tolerance)

Gets the shortest segment joining a rectangle to a curved loop, within a tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolyline2)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the polyline path of polyline using default tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolyline2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of rect to a point on the polyline path of polyline within tolerance.

GetShortestLineTo(GeoRectangle2, GeoPolylineArc2)

Gets the shortest segment joining a rectangle to a curved chain.

GetShortestLineTo(GeoRectangle2, GeoPolylineArc2, Tolerance)

Gets the shortest segment joining a rectangle to a curved chain, within a tolerance.

GetShortestLineTo(GeoRectangle2, GeoRectangle2)

Finds the shortest line segment connecting a point on the boundary of r1 to a point on the boundary of r2 using default tolerance.

GetShortestLineTo(GeoRectangle2, GeoRectangle2, Tolerance)

Finds the shortest line segment connecting a point on the boundary of r1 to a point on the boundary of r2 within tolerance.

Project(GeoVector2, GeoVector2)

Projects a vector onto another axis vector using default tolerance.

Project(GeoVector2, GeoVector2, Tolerance)

Projects a vector onto another axis vector within tolerance.

ProjectToCircle(GeoCircle2, GeoPoint2)

Projects a point onto the circumference of a circle using default tolerance.

ProjectToCircle(GeoCircle2, GeoPoint2, Tolerance)

Projects a point onto the circumference of a circle within tolerance. The result always lies on the circumference, including for points inside the circle.

ProjectToFace(GeoFace2, GeoPoint2)

Gets the point of the boundary of a face nearest another point.

ProjectToFace(GeoFace2, GeoPoint2, Tolerance)

Gets the point of the boundary of a face nearest another point, within a tolerance.

ProjectToInfiniteLine(GeoLine2, GeoPoint2)

Gets the foot of the perpendicular from a point to the infinite line carrying a segment, using the default tolerance.

ProjectToInfiniteLine(GeoLine2, GeoPoint2, Tolerance)

Gets the foot of the perpendicular from a point to the infinite line carrying a segment, within a tolerance.

ProjectToLine(GeoLine2, GeoPoint2)

Projects a point orthogonally onto a line segment using default tolerance, clamping the result to [StartPoint, EndPoint].

ProjectToLine(GeoLine2, GeoPoint2, Tolerance)

Projects a point orthogonally onto a line segment within tolerance, clamping the result to [StartPoint, EndPoint]. The result never lies beyond either endpoint.

ProjectToPolygon(GeoPolygon2, GeoPoint2)

Projects a point onto the boundary of a polygon using default tolerance.

ProjectToPolygon(GeoPolygon2, GeoPoint2, Tolerance)

Projects a point onto the boundary of a polygon within tolerance (finds the closest point on any edge). The result always lies on the boundary, including for points inside the polygon.

ProjectToPolygonArc(GeoPolygonArc2, GeoPoint2)

Gets the point of a loop that may curve nearest a point.

ProjectToPolygonArc(GeoPolygonArc2, GeoPoint2, Tolerance)

Gets the point of a loop that may curve nearest a point, within a tolerance.

ProjectToPolyline(GeoPolyline2, GeoPoint2)

Projects a point orthogonally onto a polyline using default tolerance.

ProjectToPolyline(GeoPolyline2, GeoPoint2, Tolerance)

Projects a point orthogonally onto a polyline within tolerance (finds the closest point across all segments). The result always lies on the path.

ProjectToPolylineArc(GeoPolylineArc2, GeoPoint2)

Gets the point of a chain that may curve nearest a point.

ProjectToPolylineArc(GeoPolylineArc2, GeoPoint2, Tolerance)

Gets the point of a chain that may curve nearest a point, within a tolerance.

ProjectToRectangle(GeoRectangle2, GeoPoint2)

Projects a point onto the boundary of a rotated rectangle (GeoRectangle2 OBB). The result always lies on one of the four edges, including for points inside the rectangle.