Struct GeoArc3
- Namespace
- GeometryHelper.Geometry
- Assembly
- GeometryHelper.dll
Whether an arc touches another shape.
public readonly struct GeoArc3 : IEquatable<GeoArc3>
- Implements
- Inherited Members
- Extension Methods
Constructors
- GeoArc3(GeoPoint3, GeoVector3, double, double, double)
Initializes an arc running counter-clockwise around its normal from one angle to another.
- GeoArc3(GeoPoint3, GeoVector3, double, double, double, bool)
Initializes an arc running from one angle to another, either way round its normal.
Properties
- 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 around its normal.
- IsValid
Gets whether this is a shape a constructor could have made: the centre is a valid point, the normal of unit length, the radius a positive number and the angles numbers.
- Length
Gets the length of the arc.
- MidPoint
Gets the point halfway along the arc.
- Normal
Gets the unit normal of the plane carrying the arc.
- Radius
Gets the radius of the arc.
- StartAngle
Gets the angle the arc starts at, in radians, 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 around the normal, negative clockwise, never zero, and never more than a whole turn either way.
Methods
- Clone()
Creates a copy of this arc.
- CollidesWith(GeoAabb3)
Checks whether this arc touches an axis-aligned box, using the default tolerance.
- CollidesWith(GeoAabb3, Tolerance)
Checks whether this arc touches an axis-aligned box, within a tolerance.
- CollidesWith(GeoArc3)
Checks whether this arc touches an arc, using the default tolerance.
- CollidesWith(GeoArc3, Tolerance)
Checks whether this arc touches an arc, within a tolerance.
- CollidesWith(GeoCircle3)
Checks whether this arc touches a circle, using the default tolerance.
- CollidesWith(GeoCircle3, Tolerance)
Checks whether this arc touches a circle, within a tolerance.
- CollidesWith(GeoEdge3)
Checks whether this arc touches an edge.
- CollidesWith(GeoEdge3, Tolerance)
Checks whether this arc touches an edge, within a tolerance.
- CollidesWith(GeoFace3)
Checks whether this arc touches a face, using the default tolerance.
- CollidesWith(GeoFace3, Tolerance)
Checks whether this arc touches a face, within a tolerance.
- CollidesWith(GeoLine3)
Checks whether this arc touches a segment, using the default tolerance.
- CollidesWith(GeoLine3, Tolerance)
Checks whether this arc touches a segment, within a tolerance.
- CollidesWith(GeoObb3)
Checks whether this arc touches an oriented box, using the default tolerance.
- CollidesWith(GeoObb3, Tolerance)
Checks whether this arc touches an oriented box, within a tolerance.
- CollidesWith(GeoPlane3)
Checks whether this arc touches a plane, using the default tolerance.
- CollidesWith(GeoPlane3, Tolerance)
Checks whether this arc touches a plane, within a tolerance.
- CollidesWith(GeoPolygon3)
Checks whether this arc touches a polygon, using the default tolerance.
- CollidesWith(GeoPolygon3, Tolerance)
Checks whether this arc touches a polygon, within a tolerance.
- CollidesWith(GeoPolygonArc3)
Checks whether this arc touches a curved loop.
- CollidesWith(GeoPolygonArc3, Tolerance)
Checks whether this arc touches a curved loop, within a tolerance.
- CollidesWith(GeoPolylineArc3)
Checks whether this arc touches a curved chain.
- CollidesWith(GeoPolylineArc3, Tolerance)
Checks whether this arc touches a curved chain, within a tolerance.
- CollidesWith(GeoRay3)
Checks whether this arc touches a ray, using the default tolerance.
- CollidesWith(GeoRay3, Tolerance)
Checks whether this arc touches a ray, within a tolerance.
- CollidesWith(GeoSolid3)
Checks whether this arc touches a solid, using the default tolerance.
- CollidesWith(GeoSolid3, Tolerance)
Checks whether this arc touches a solid, within a tolerance.
- CollidesWith(GeoTriangle3)
Checks whether this arc touches a triangle, using the default tolerance.
- CollidesWith(GeoTriangle3, Tolerance)
Checks whether this arc touches a triangle, within a tolerance.
- CoversAngle(double)
Determines whether the arc reaches a given angle.
- DistanceTo(GeoPoint3)
Gets the distance from this arc to a point.
- DistanceTo(GeoPoint3, Tolerance)
Gets the distance from this arc to a point, within a tolerance.
- Equals(GeoArc3)
Determines whether another arc holds exactly the same values.
- 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.
- FromThreePoints(GeoPoint3, GeoPoint3, GeoPoint3)
Creates the arc through three points in space, using the default tolerance.
- FromThreePoints(GeoPoint3, GeoPoint3, GeoPoint3, Tolerance)
Creates the arc through three points in space, within a tolerance.
- GetAabb()
Gets the axis-aligned box enclosing the arc.
- 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.
- GetClosestPointOnBoundary(GeoPoint3)
Gets the point of this arc closest to a point.
- GetClosestPointOnBoundary(GeoPoint3, 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(GeoPoint3)
Gets the arc length from the start of the arc to the point of it nearest a point.
- GetHashCode()
Returns the hash code for this arc.
- GetIntersections(GeoAabb3)
Gets every point where this arc crosses the surface of an axis-aligned box, using the default tolerance.
- GetIntersections(GeoAabb3, Tolerance)
Gets every point where this arc crosses the surface of an axis-aligned box, within a tolerance.
- GetIntersections(GeoArc3)
Gets every point where this arc crosses an arc, using the default tolerance.
- GetIntersections(GeoArc3, Tolerance)
Gets every point where this arc crosses an arc, within a tolerance.
- GetIntersections(GeoCircle3)
Gets every point where this arc crosses a circle, using the default tolerance.
- GetIntersections(GeoCircle3, Tolerance)
Gets every point where this arc crosses a circle, within a tolerance.
- GetIntersections(GeoEdge3)
Gets every point where an edge crosses this arc.
- GetIntersections(GeoEdge3, Tolerance)
Gets every point where an edge crosses this arc, within a tolerance.
- GetIntersections(GeoFace3)
Gets every point where this arc crosses a face, using the default tolerance.
- GetIntersections(GeoFace3, Tolerance)
Gets every point where this arc crosses a face, within a tolerance.
- GetIntersections(GeoLine3)
Gets every point where this arc crosses a segment, using the default tolerance.
- GetIntersections(GeoLine3, Tolerance)
Gets every point where this arc crosses a segment, within a tolerance.
- GetIntersections(GeoObb3)
Gets every point where this arc crosses the surface of an oriented box, using the default tolerance.
- GetIntersections(GeoObb3, Tolerance)
Gets every point where this arc crosses the surface of an oriented box, within a tolerance.
- GetIntersections(GeoPlane3)
Gets every point where this arc crosses a plane, using the default tolerance.
- GetIntersections(GeoPlane3, Tolerance)
Gets every point where this arc crosses a plane, within a tolerance.
- GetIntersections(GeoPolygon3)
Gets every point where this arc crosses a polygon, using the default tolerance.
- GetIntersections(GeoPolygon3, Tolerance)
Gets every point where this arc crosses a polygon, within a tolerance.
- GetIntersections(GeoPolygonArc3)
Gets every point where a curved loop crosses this arc.
- GetIntersections(GeoPolygonArc3, Tolerance)
Gets every point where a curved loop crosses this arc, within a tolerance.
- GetIntersections(GeoPolylineArc3)
Gets every point where a curved chain crosses this arc.
- GetIntersections(GeoPolylineArc3, Tolerance)
Gets every point where a curved chain crosses this arc, within a tolerance.
- GetIntersections(GeoRay3)
Gets every point where this arc crosses a ray, using the default tolerance.
- GetIntersections(GeoRay3, Tolerance)
Gets every point where this arc crosses a ray, within a tolerance.
- GetIntersections(GeoSolid3)
Gets every point where this arc crosses the surface of a solid, using the default tolerance.
- GetIntersections(GeoSolid3, Tolerance)
Gets every point where this arc crosses the surface of a solid, within a tolerance.
- GetIntersections(GeoTriangle3)
Gets every point where this arc crosses a triangle, using the default tolerance.
- GetIntersections(GeoTriangle3, Tolerance)
Gets every point where this arc crosses a triangle, within a tolerance.
- GetParameterAtDistance(double)
Gets the normalized parameter at an arc length measured from the start of the arc.
- GetParameterAtPoint(GeoPoint3)
Gets the normalized parameter of the point of the arc nearest a point, using the default tolerance.
- GetParameterAtPoint(GeoPoint3, Tolerance)
Gets the normalized parameter of the point of the arc nearest a point, within a tolerance.
- GetPlane()
Gets the plane carrying the arc.
- 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.
- IsEqualTo(GeoArc3)
Determines whether another arc draws the same curve, within the default tolerance.
- IsEqualTo(GeoArc3, Tolerance)
Determines whether another arc draws the same curve, within a tolerance.
- IsPointOn(GeoPoint3)
Determines whether a point lies on this arc.
- IsPointOn(GeoPoint3, Tolerance)
Determines whether a point lies on this arc, within a tolerance.
- Locate(GeoPoint3)
Says where a point sits relative to this arc; a curve never answers Inside.
- Locate(GeoPoint3, Tolerance)
Says where a point sits relative to this arc, within a tolerance.
- ProjectToArc2(GeoCoordinateSystem3)
Lays this arc out in the plane of a frame, dropping each point's distance from that plane.
- Reverse()
Gets the arc running the other way, from this one's end to its start.
- ToPolyline()
Approximates the arc as a chain, cut by the automatic chord tolerance.
- 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(GeoTransform3)
Applies a transformation to this arc.
- Translate(GeoVector3)
Moves the arc by a vector.
- TryExtendTo(GeoPoint3, LineEnd, out GeoArc3)
Lengthens the arc at one end until it reaches a point on its own circle.
- TryExtendTo(GeoPoint3, LineEnd, out GeoArc3, Tolerance)
Lengthens the arc at one end until it reaches a point on its own circle, within a tolerance.
- TryIntersectWith(GeoAabb3, out GeoPoint3[])
Tries to find where this arc crosses the surface of an axis-aligned box, using the default tolerance.
- TryIntersectWith(GeoAabb3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses the surface of an axis-aligned box, within a tolerance.
- TryIntersectWith(GeoArc3, out GeoPoint3[])
Tries to find where this arc crosses an arc, using the default tolerance.
- TryIntersectWith(GeoArc3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses an arc, within a tolerance.
- TryIntersectWith(GeoCircle3, out GeoPoint3[])
Tries to find where this arc crosses a circle, using the default tolerance.
- TryIntersectWith(GeoCircle3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a circle, within a tolerance.
- TryIntersectWith(GeoEdge3, out GeoPoint3[])
Tries to find where an edge crosses this arc.
- TryIntersectWith(GeoEdge3, out GeoPoint3[], Tolerance)
Tries to find where an edge crosses this arc, within a tolerance.
- TryIntersectWith(GeoFace3, out GeoPoint3[])
Tries to find where this arc crosses a face, using the default tolerance.
- TryIntersectWith(GeoFace3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a face, within a tolerance.
- TryIntersectWith(GeoLine3, out GeoPoint3[])
Tries to find where this arc crosses a segment, using the default tolerance.
- TryIntersectWith(GeoLine3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a segment, within a tolerance.
- TryIntersectWith(GeoObb3, out GeoPoint3[])
Tries to find where this arc crosses the surface of an oriented box, using the default tolerance.
- TryIntersectWith(GeoObb3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses the surface of an oriented box, within a tolerance.
- TryIntersectWith(GeoPlane3, out GeoPoint3[])
Tries to find where this arc crosses a plane, using the default tolerance.
- TryIntersectWith(GeoPlane3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a plane, within a tolerance.
- TryIntersectWith(GeoPolygon3, out GeoPoint3[])
Tries to find where this arc crosses a polygon, using the default tolerance.
- TryIntersectWith(GeoPolygon3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a polygon, within a tolerance.
- TryIntersectWith(GeoRay3, out GeoPoint3[])
Tries to find where this arc crosses a ray, using the default tolerance.
- TryIntersectWith(GeoRay3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a ray, within a tolerance.
- TryIntersectWith(GeoSolid3, out GeoPoint3[])
Tries to find where this arc crosses the surface of a solid, using the default tolerance.
- TryIntersectWith(GeoSolid3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses the surface of a solid, within a tolerance.
- TryIntersectWith(GeoTriangle3, out GeoPoint3[])
Tries to find where this arc crosses a triangle, using the default tolerance.
- TryIntersectWith(GeoTriangle3, out GeoPoint3[], Tolerance)
Tries to find where this arc crosses a triangle, within a tolerance.
- TryOffset(double, out GeoArc3)
Gets the arc concentric with this one at a distance from it, using the default tolerance.
- TryOffset(double, out GeoArc3, Tolerance)
Gets the arc concentric with this one at a distance from it, within a tolerance.
- TrySplitAt(GeoPoint3, out GeoArc3[])
Cuts the arc at the point of it nearest a point.
- TrySplitAt(GeoPoint3, out GeoArc3[], Tolerance)
Cuts the arc at the point of it nearest a point, within a tolerance.
- TrySplitAt(double, out GeoArc3[])
Cuts the arc at a normalized parameter, where 0 is its start and 1 its end.
- TrySplitAt(double, out GeoArc3[], Tolerance)
Cuts the arc at a normalized parameter, within a tolerance.
- TrySplitAtDistance(double, out GeoArc3[])
Cuts the arc at an arc length measured from its start.
- TrySplitAtDistance(double, out GeoArc3[], Tolerance)
Cuts the arc at an arc length measured from its start, within a tolerance.
- TryTrimTo(GeoPoint3, LineEnd, out GeoArc3)
Shortens the arc at one end back to a point on it.
- TryTrimTo(GeoPoint3, LineEnd, out GeoArc3, Tolerance)
Shortens the arc at one end back to a point on it, within a tolerance.
Operators
- operator ==(GeoArc3, GeoArc3)
Determines whether two arcs hold exactly the same values.
- operator !=(GeoArc3, GeoArc3)
Determines whether two arcs hold different values.