Table of Contents

Struct GeoArc2

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

Whether an arc touches another shape.

public readonly struct GeoArc2 : IEquatable<GeoArc2>
Implements
Inherited Members
Extension Methods

Constructors

GeoArc2(GeoPoint2, double, double, double)

Initializes an arc running counter-clockwise from one angle to another.

GeoArc2(GeoPoint2, double, double, double, bool)

Initializes an arc running from one angle to another, either way round.

Properties

Bulge

Gets the bulge of the arc: the tangent of a quarter of the angle it sweeps, the number AutoCAD stores per vertex, signed the same way as SweptAngle.

Center

Gets the centre of the circle the arc lies on.

EndAngle

Gets the angle the arc ends at, in radians, wrapped into the range from zero to a full turn.

EndPoint

Gets the point the arc ends at.

IsClockwise

Gets a value indicating whether the arc sweeps clockwise.

IsValid

Gets whether this is a shape a constructor could have made: the centre is a valid point, the radius a positive number and the angles numbers.

Length

Gets the length of the arc.

MidPoint

Gets the point halfway along the arc.

Radius

Gets the radius of the arc.

StartAngle

Gets the angle the arc starts at, in radians, measured counter-clockwise from the X axis and wrapped into the range from zero to a full turn.

StartPoint

Gets the point the arc starts at.

SweptAngle

Gets the angle the arc sweeps through, in radians: positive counter-clockwise, negative clockwise, never zero, and never more than a whole turn either way.

Methods

Clone()

Creates a copy of this arc.

CollidesWith(GeoArc2)

Checks whether this arc touches another arc, using the default tolerance.

CollidesWith(GeoArc2, Tolerance)

Checks whether this arc touches another arc, within a tolerance.

CollidesWith(GeoCircle2)

Checks whether this arc touches a circle, using the default tolerance.

CollidesWith(GeoCircle2, Tolerance)

Checks whether this arc touches a circle, within a tolerance.

CollidesWith(GeoEdge2)

Checks whether this arc touches an edge.

CollidesWith(GeoEdge2, Tolerance)

Checks whether this arc touches an edge, within a tolerance.

CollidesWith(GeoFace2)

Checks whether this arc reaches the material of a face, using the default tolerance.

CollidesWith(GeoFace2, Tolerance)

Checks whether this arc reaches the material of a face, within a tolerance.

CollidesWith(GeoLine2)

Checks whether this arc touches a segment, using the default tolerance.

CollidesWith(GeoLine2, Tolerance)

Checks whether this arc touches a segment, within a tolerance.

CollidesWith(GeoPolygon2)

Checks whether this arc touches a polygon, using the default tolerance.

CollidesWith(GeoPolygon2, Tolerance)

Checks whether this arc touches a polygon, within a tolerance.

CollidesWith(GeoPolygonArc2)

Checks whether this arc touches a curved loop, using the default tolerance.

CollidesWith(GeoPolygonArc2, Tolerance)

Checks whether this arc touches a curved loop, within a tolerance.

CollidesWith(GeoPolyline2)

Checks whether this arc touches a polyline, using the default tolerance.

CollidesWith(GeoPolyline2, Tolerance)

Checks whether this arc touches a polyline, within a tolerance.

CollidesWith(GeoPolylineArc2)

Checks whether this arc touches a curved chain, using the default tolerance.

CollidesWith(GeoPolylineArc2, Tolerance)

Checks whether this arc touches a curved chain, within a tolerance.

CollidesWith(GeoRectangle2)

Checks whether this arc touches a rectangle, using the default tolerance.

CollidesWith(GeoRectangle2, Tolerance)

Checks whether this arc touches a rectangle, within a tolerance.

CollidesWith(GeoTriangle2)

Checks whether this arc touches a triangle, using the default tolerance.

CollidesWith(GeoTriangle2, Tolerance)

Checks whether this arc touches a triangle, within a tolerance.

DistanceTo(GeoArc2)

Gets the distance between this arc and another.

DistanceTo(GeoArc2, Tolerance)

Gets the distance between this arc and another, within a tolerance.

DistanceTo(GeoCircle2)

Gets the distance from this arc to a circle, using the default tolerance.

DistanceTo(GeoCircle2, Tolerance)

Gets the distance from this arc to a circle, within a tolerance.

DistanceTo(GeoEdge2)

Gets the distance from this arc to an edge.

DistanceTo(GeoEdge2, Tolerance)

Gets the distance from this arc to an edge, within a tolerance.

DistanceTo(GeoLine2)

Gets the distance between this arc and a segment.

DistanceTo(GeoLine2, Tolerance)

Gets the distance between this arc and a segment, within a tolerance.

DistanceTo(GeoPoint2)

Gets the distance from this arc to a point.

DistanceTo(GeoPoint2, Tolerance)

Gets the distance from this arc to a point, within a tolerance.

DistanceTo(GeoPolygon2)

Gets the distance from this arc to a polygon, using the default tolerance.

DistanceTo(GeoPolygon2, Tolerance)

Gets the distance from this arc to a polygon, within a tolerance.

DistanceTo(GeoPolygonArc2)

Gets the distance from this arc to a curved loop, using the default tolerance.

DistanceTo(GeoPolygonArc2, Tolerance)

Gets the distance from this arc to a curved loop, within a tolerance.

DistanceTo(GeoPolyline2)

Gets the distance from this arc to a polyline, using the default tolerance.

DistanceTo(GeoPolyline2, Tolerance)

Gets the distance from this arc to a polyline, within a tolerance.

DistanceTo(GeoPolylineArc2)

Gets the distance from this arc to a curved chain, using the default tolerance.

DistanceTo(GeoPolylineArc2, Tolerance)

Gets the distance from this arc to a curved chain, within a tolerance.

DistanceTo(GeoRectangle2)

Gets the distance from this arc to a rectangle, using the default tolerance.

DistanceTo(GeoRectangle2, Tolerance)

Gets the distance from this arc to a rectangle, within a tolerance.

DistanceTo(GeoTriangle2)

Gets the distance from this arc to a triangle.

DistanceTo(GeoTriangle2, Tolerance)

Gets the distance from this arc to a triangle, within a tolerance.

Equals(GeoArc2)

Determines whether another arc holds exactly the same centre, radius and angles.

Equals(object)

Determines whether the specified object is an equal arc.

Extend(double, LineEnd)

Lengthens the arc along itself at one end, keeping its centre and radius.

Extend(double, LineEnd, Tolerance)

Lengthens the arc along itself at one end, within a tolerance.

Extend(double, double)

Lengthens the arc along itself at both ends at once.

Extend(double, double, Tolerance)

Lengthens the arc along itself at both ends at once, within a tolerance.

ExtendToLength(double, LineEnd)

Lengthens or shortens the arc at one end until it is a given arc length.

ExtendToLength(double, LineEnd, Tolerance)

Lengthens or shortens the arc at one end until it is a given arc length, within a tolerance.

FromBulge(GeoPoint2, GeoPoint2, double)

Creates the arc between two points with a given bulge, the number AutoCAD stores per vertex.

FromThreePoints(GeoPoint2, GeoPoint2, GeoPoint2)

Creates the arc through three points, using the default tolerance.

FromThreePoints(GeoPoint2, GeoPoint2, GeoPoint2, Tolerance)

Creates the arc through three points, within a tolerance.

GetChord()

Gets the chord of the arc: the straight segment from where it starts to where it ends.

GetCircle()

Gets the circle the arc lies on.

GetClosestEdge(GeoPolygonArc2)

Gets the edge of a curved loop nearest this arc, using the default tolerance.

GetClosestEdge(GeoPolygonArc2, Tolerance)

Gets the edge of a curved loop nearest this arc, within a tolerance.

GetClosestEdge(GeoPolylineArc2)

Gets the edge of a curved chain nearest this arc, using the default tolerance.

GetClosestEdge(GeoPolylineArc2, Tolerance)

Gets the edge of a curved chain nearest this arc, within a tolerance.

GetClosestPointOnBoundary(GeoPoint2)

Gets the point of this arc closest to a point.

GetClosestPointOnBoundary(GeoPoint2, Tolerance)

Gets the point of this arc closest to a point, within a tolerance.

GetDistanceAtParameter(double)

Gets the arc length from the start of the arc to a normalized parameter.

GetDistanceAtPoint(GeoPoint2)

Gets the arc length from the start of the arc to the point of it nearest a point.

GetDistanceAtPoint(GeoPoint2, Tolerance)

Gets the arc length from the start of the arc to the point of it nearest a point, within a tolerance.

GetHashCode()

Returns the hash code for this arc.

GetIntersections(GeoArc2)

Gets where this arc meets another.

GetIntersections(GeoArc2, Tolerance)

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

GetIntersections(GeoCircle2)

Gets where this arc meets a circle.

GetIntersections(GeoCircle2, Tolerance)

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

GetIntersections(GeoEdge2)

Gets every point where this arc crosses an edge.

GetIntersections(GeoEdge2, Tolerance)

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

GetIntersections(GeoFace2)

Gets every point where this arc crosses the boundary of a face, using the default tolerance.

GetIntersections(GeoFace2, Tolerance)

Gets every point where this arc crosses the boundary of a face, within a tolerance.

GetIntersections(GeoLine2)

Gets where this arc meets a segment.

GetIntersections(GeoLine2, Tolerance)

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

GetIntersections(GeoPolygon2)

Gets every point where this arc crosses a polygon, using the default tolerance.

GetIntersections(GeoPolygon2, Tolerance)

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

GetIntersections(GeoPolygonArc2)

Gets every point where this arc crosses a curved loop, using the default tolerance.

GetIntersections(GeoPolygonArc2, Tolerance)

Gets every point where this arc crosses a curved loop, within a tolerance.

GetIntersections(GeoPolyline2)

Gets every point where this arc crosses a polyline, using the default tolerance.

GetIntersections(GeoPolyline2, Tolerance)

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

GetIntersections(GeoPolylineArc2)

Gets every point where this arc crosses a curved chain, using the default tolerance.

GetIntersections(GeoPolylineArc2, Tolerance)

Gets every point where this arc crosses a curved chain, within a tolerance.

GetIntersections(GeoRectangle2)

Gets every point where this arc crosses a rectangle, using the default tolerance.

GetIntersections(GeoRectangle2, Tolerance)

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

GetIntersections(GeoTriangle2)

Gets every point where this arc meets the edges of a triangle, using the default tolerance.

GetIntersections(GeoTriangle2, Tolerance)

Gets every point where this arc meets the edges of a triangle, within a tolerance.

GetParameterAtDistance(double)

Gets the normalized parameter at an arc length measured from the start of the arc.

GetParameterAtPoint(GeoPoint2)

Gets the normalized parameter of the point of the arc nearest a point, using the default tolerance.

GetParameterAtPoint(GeoPoint2, Tolerance)

Gets the normalized parameter of the point of the arc nearest a point, within a tolerance.

GetPointAtAngle(double)

Gets the point of the arc at an angle, whether or not the arc reaches that far.

GetPointAtDistance(double)

Gets the point at an arc length measured from the start of the arc.

GetPointAtParameter(double)

Gets the point at a normalized parameter along the arc, where 0 is its start and 1 its end.

GetShortestLineTo(GeoArc2)

Gets the shortest segment leaving this arc and landing on a arc, using the default tolerance.

GetShortestLineTo(GeoArc2, Tolerance)

Gets the shortest segment leaving this arc and landing on a arc, within a tolerance.

GetShortestLineTo(GeoCircle2)

Gets the shortest segment leaving this arc and landing on a circle, using the default tolerance.

GetShortestLineTo(GeoCircle2, Tolerance)

Gets the shortest segment leaving this arc and landing on a circle, within a tolerance.

GetShortestLineTo(GeoEdge2)

Gets the shortest segment leaving this arc and landing on an edge.

GetShortestLineTo(GeoEdge2, Tolerance)

Gets the shortest segment leaving this arc and landing on an edge, within a tolerance.

GetShortestLineTo(GeoFace2)

Gets the shortest segment leaving this arc and landing on the boundary of a face, using the default tolerance.

GetShortestLineTo(GeoFace2, Tolerance)

Gets the shortest segment leaving this arc and landing on the boundary of a face, within a tolerance.

GetShortestLineTo(GeoLine2)

Gets the shortest segment leaving this arc and landing on a segment, using the default tolerance.

GetShortestLineTo(GeoLine2, Tolerance)

Gets the shortest segment leaving this arc and landing on a segment, within a tolerance.

GetShortestLineTo(GeoPoint2)

Gets the shortest segment leaving this arc and landing on a point, using the default tolerance.

GetShortestLineTo(GeoPoint2, Tolerance)

Gets the shortest segment leaving this arc and landing on a point, within a tolerance.

GetShortestLineTo(GeoPolygon2)

Gets the shortest segment leaving this arc and landing on a polygon, using the default tolerance.

GetShortestLineTo(GeoPolygon2, Tolerance)

Gets the shortest segment leaving this arc and landing on a polygon, within a tolerance.

GetShortestLineTo(GeoPolygonArc2)

Gets the shortest segment leaving this arc and landing on a curved loop, using the default tolerance.

GetShortestLineTo(GeoPolygonArc2, Tolerance)

Gets the shortest segment leaving this arc and landing on a curved loop, within a tolerance.

GetShortestLineTo(GeoPolyline2)

Gets the shortest segment leaving this arc and landing on a polyline, using the default tolerance.

GetShortestLineTo(GeoPolyline2, Tolerance)

Gets the shortest segment leaving this arc and landing on a polyline, within a tolerance.

GetShortestLineTo(GeoPolylineArc2)

Gets the shortest segment leaving this arc and landing on a curved chain, using the default tolerance.

GetShortestLineTo(GeoPolylineArc2, Tolerance)

Gets the shortest segment leaving this arc and landing on a curved chain, within a tolerance.

GetShortestLineTo(GeoRectangle2)

Gets the shortest segment leaving this arc and landing on a rectangle, using the default tolerance.

GetShortestLineTo(GeoRectangle2, Tolerance)

Gets the shortest segment leaving this arc and landing on a rectangle, within a tolerance.

GetShortestLineTo(GeoTriangle2)

Gets the shortest segment leaving this arc and landing on a triangle, using the default tolerance.

GetShortestLineTo(GeoTriangle2, Tolerance)

Gets the shortest segment leaving this arc and landing on a triangle, within a tolerance.

IsEqualTo(GeoArc2)

Determines whether another arc draws the same curve, within the default tolerance.

IsEqualTo(GeoArc2, Tolerance)

Determines whether another arc draws the same curve, within a tolerance.

IsPointOn(GeoPoint2)

Determines whether a point lies on this arc.

IsPointOn(GeoPoint2, Tolerance)

Determines whether a point lies on this arc, within a tolerance.

Locate(GeoPoint2)

Says where a point sits relative to this arc; a curve never answers Inside.

Locate(GeoPoint2, Tolerance)

Says where a point sits relative to this arc, within a tolerance.

Reverse()

Gets the arc running the other way, from this one's end to its start.

RotateBy(double, GeoPoint2)

Turns the arc about a point.

ToPolyline()

Approximates the arc as a chain, cut finely enough that it strays no further from the arc than the automatic share of its radius.

ToPolyline(int)

Approximates the arc as a chain with a given number of pieces.

ToPolylineByChordTolerance(double)

Approximates the arc as a chain that strays no further from it than a chord tolerance.

ToPolylineBySpacing(double)

Approximates the arc as a chain whose points are no further apart than a spacing.

ToString()

Describes the arc.

TransformBy(GeoTransform2)

Applies a transformation to this arc.

Translate(GeoVector2)

Moves the arc by a vector.

TryExtendTo(GeoPoint2, LineEnd, out GeoArc2)

Lengthens the arc at one end until it reaches a point on its own circle.

TryExtendTo(GeoPoint2, LineEnd, out GeoArc2, Tolerance)

Lengthens the arc at one end until it reaches a point on its own circle, within a tolerance.

TryIntersectWith(GeoArc2, out GeoPoint2[])

Finds where this arc meets another.

TryIntersectWith(GeoArc2, out GeoPoint2[], Tolerance)

Finds where this arc meets another, within a tolerance.

TryIntersectWith(GeoCircle2, out GeoPoint2[])

Finds where this arc meets a circle.

TryIntersectWith(GeoCircle2, out GeoPoint2[], Tolerance)

Finds where this arc meets a circle, within a tolerance.

TryIntersectWith(GeoEdge2, out GeoPoint2[])

Tries to find where this arc crosses an edge.

TryIntersectWith(GeoEdge2, out GeoPoint2[], Tolerance)

Tries to find where this arc crosses an edge, within a tolerance.

TryIntersectWith(GeoLine2, out GeoPoint2[])

Finds where this arc meets a segment.

TryIntersectWith(GeoLine2, out GeoPoint2[], Tolerance)

Finds where this arc meets a segment, within a tolerance.

TryIntersectWith(GeoPolygonArc2, out GeoPoint2[])

Tries to find where this arc crosses a curved loop, using the default tolerance.

TryIntersectWith(GeoPolygonArc2, out GeoPoint2[], Tolerance)

Tries to find where this arc crosses a curved loop, within a tolerance.

TryIntersectWith(GeoPolylineArc2, out GeoPoint2[])

Tries to find where this arc crosses a curved chain, using the default tolerance.

TryIntersectWith(GeoPolylineArc2, out GeoPoint2[], Tolerance)

Tries to find where this arc crosses a curved chain, within a tolerance.

TryOffset(double, out GeoArc2)

Gets the arc concentric with this one at a distance from it, using the default tolerance.

TryOffset(double, out GeoArc2, Tolerance)

Gets the arc concentric with this one at a distance from it, within a tolerance.

TrySplitAt(GeoPoint2, out GeoArc2[])

Splits this arc at the point of it nearest a point.

TrySplitAt(GeoPoint2, out GeoArc2[], Tolerance)

Splits this arc at the point of it nearest a point, within a tolerance.

TrySplitAt(double, out GeoArc2[])

Splits this arc at a normalized parameter.

TrySplitAt(double, out GeoArc2[], Tolerance)

Splits this arc at a normalized parameter, within a tolerance.

TryTrimTo(GeoPoint2, LineEnd, out GeoArc2)

Shortens the arc at one end back to a point on it.

TryTrimTo(GeoPoint2, LineEnd, out GeoArc2, Tolerance)

Shortens the arc at one end back to a point on it, within a tolerance.

Operators

operator ==(GeoArc2, GeoArc2)

Determines whether two arcs hold exactly the same values.

operator !=(GeoArc2, GeoArc2)

Determines whether two arcs hold different values.