Class GeoPolylineArc2
- Namespace
- GeometryHelper.Geometry
- Assembly
- GeometryHelper.dll
Whether a curved chain touches another shape.
public sealed class GeoPolylineArc2 : IEquatable<GeoPolylineArc2>
- Inheritance
-
GeoPolylineArc2
- Implements
- Inherited Members
- Extension Methods
Constructors
- GeoPolylineArc2(GeoPolyline2)
Initializes a chain from a straight one, with no bulges.
- GeoPolylineArc2(IEnumerable<GeoEdge2>)
Initializes a chain from edges that run end to end.
- GeoPolylineArc2(IEnumerable<GeoPoint2>)
Initializes a chain of straight pieces.
- GeoPolylineArc2(IEnumerable<GeoPoint2>, IEnumerable<double>)
Initializes a chain whose pieces may be arcs.
Properties
- Bulges
Gets the bulge of each edge: the one at an index belongs to the edge leaving that vertex, so the last vertex of an open chain has none.
- EdgeCount
Gets the number of edges of the chain, one fewer than its vertices.
- EndPoint
Gets the last vertex, where the chain ends.
- HasArcs
Gets a value indicating whether any edge of the chain is an arc.
- this[int]
Gets the vertex at an index.
- Length
Gets the length of the chain, measured along its arcs rather than across them.
- MidPoint
Gets the point half way along the chain, measured along its arcs.
- StartPoint
Gets the first vertex, where the chain starts.
- VertexCount
Gets the number of vertices of the chain.
- Vertices
Gets the vertices of the chain, in order.
Methods
- BuildIndex()
Builds a spatial index over the edges of this chain, arcs and all, for asking it many questions.
- Chamfer(double)
Chamfers every corner that has room for it, cutting the same distance along both edges.
- Chamfer(double, double, Tolerance)
Chamfers every corner that has room for it, within a tolerance.
- Clone()
Creates a copy of this chain holding its own arrays.
- CollidesWith(GeoArc2)
Determines whether the chain touches or overlaps an arc.
- CollidesWith(GeoArc2, Tolerance)
Determines whether the chain touches or overlaps an arc, within a tolerance.
- CollidesWith(GeoCircle2)
Determines whether the chain touches or overlaps a circle.
- CollidesWith(GeoCircle2, Tolerance)
Determines whether the chain touches or overlaps a circle, within a tolerance.
- CollidesWith(GeoEdge2)
Checks whether this curved chain touches an edge.
- CollidesWith(GeoEdge2, Tolerance)
Checks whether this curved chain touches an edge, within a tolerance.
- CollidesWith(GeoFace2)
Checks whether this curved chain reaches the material of a face, using the default tolerance.
- CollidesWith(GeoFace2, Tolerance)
Checks whether this curved chain reaches the material of a face, within a tolerance.
- CollidesWith(GeoLine2)
Determines whether the chain touches or overlaps a straight segment.
- CollidesWith(GeoLine2, Tolerance)
Determines whether the chain touches or overlaps a straight segment, within a tolerance.
- CollidesWith(GeoPolygon2)
Determines whether the chain touches or overlaps a straight loop.
- CollidesWith(GeoPolygon2, Tolerance)
Determines whether the chain touches or overlaps a straight loop, within a tolerance.
- CollidesWith(GeoPolygonArc2)
Determines whether the chain touches or overlaps a loop that may curve.
- CollidesWith(GeoPolygonArc2, Tolerance)
Determines whether the chain touches or overlaps a loop that may curve, within a tolerance.
- CollidesWith(GeoPolyline2)
Determines whether the chain touches or overlaps a straight chain.
- CollidesWith(GeoPolyline2, Tolerance)
Determines whether the chain touches or overlaps a straight chain, within a tolerance.
- CollidesWith(GeoPolylineArc2)
Determines whether the chain touches or overlaps a chain that may curve.
- CollidesWith(GeoPolylineArc2, Tolerance)
Determines whether the chain touches or overlaps a chain that may curve, within a tolerance.
- CollidesWith(GeoRectangle2)
Determines whether this curved chain touches or overlaps a rectangle.
- CollidesWith(GeoRectangle2, Tolerance)
Determines whether this curved chain touches or overlaps a rectangle, within a tolerance.
- CollidesWith(GeoTriangle2)
Checks whether this curved chain touches a triangle, using the default tolerance.
- CollidesWith(GeoTriangle2, Tolerance)
Checks whether this curved chain touches a triangle, within a tolerance.
- DistanceTo(GeoArc2)
Gets the distance from the chain to an arc.
- DistanceTo(GeoArc2, Tolerance)
Gets the distance from the chain to an arc, within a tolerance.
- DistanceTo(GeoCircle2)
Gets the distance from the chain to a circle.
- DistanceTo(GeoCircle2, Tolerance)
Gets the distance from the chain to a circle, within a tolerance.
- DistanceTo(GeoEdge2)
Gets the distance from this curved chain to an edge.
- DistanceTo(GeoEdge2, Tolerance)
Gets the distance from this curved chain to an edge, within a tolerance.
- DistanceTo(GeoLine2)
Gets the distance from the chain to a straight segment.
- DistanceTo(GeoLine2, Tolerance)
Gets the distance from the chain to a straight segment, within a tolerance.
- DistanceTo(GeoPoint2)
Gets the distance from the chain to a point.
- DistanceTo(GeoPoint2, Tolerance)
Gets the distance from the chain to a point, within a tolerance.
- DistanceTo(GeoPolygon2)
Gets the distance from the chain to a straight loop.
- DistanceTo(GeoPolygon2, Tolerance)
Gets the distance from the chain to a straight loop, within a tolerance.
- DistanceTo(GeoPolygonArc2)
Gets the distance from the chain to a loop that may curve.
- DistanceTo(GeoPolygonArc2, Tolerance)
Gets the distance from the chain to a loop that may curve, within a tolerance.
- DistanceTo(GeoPolyline2)
Gets the distance from the chain to a straight chain.
- DistanceTo(GeoPolyline2, Tolerance)
Gets the distance from the chain to a straight chain, within a tolerance.
- DistanceTo(GeoPolylineArc2)
Gets the distance from the chain to a chain that may curve.
- DistanceTo(GeoPolylineArc2, Tolerance)
Gets the distance from the chain to a chain that may curve, within a tolerance.
- DistanceTo(GeoRectangle2)
Calculates the shortest distance from this curved chain to a rectangle.
- DistanceTo(GeoRectangle2, Tolerance)
Calculates the shortest distance from this curved chain to a rectangle, within a tolerance.
- DistanceTo(GeoTriangle2)
Gets the distance from this curved chain to a triangle.
- DistanceTo(GeoTriangle2, Tolerance)
Gets the distance from this curved chain to a triangle, within a tolerance.
- Equals(GeoPolylineArc2)
Determines whether another chain holds exactly the same vertices and bulges.
- Equals(object)
Determines whether the specified object is an equal chain.
- Extend(double, LineEnd)
Lengthens the chain along its end leg, round if that leg curves, keeping its radius.
- Extend(double, LineEnd, Tolerance)
Lengthens the chain along its end leg, within a tolerance.
- ExtendToLength(double, LineEnd)
Lengthens the chain along its end leg until the whole chain is a given length.
- ExtendToLength(double, LineEnd, Tolerance)
Lengthens the chain along its end leg until the whole chain is a given length, within a tolerance.
- Fillet(IReadOnlyList<double>)
Rounds the corners of the chain, each by its own radius.
- Fillet(IReadOnlyList<double>, Tolerance)
Rounds the corners of the chain, each by its own radius, within a tolerance.
- Fillet(double)
Rounds every corner that has room for it with an arc of a given radius.
- Fillet(double, Tolerance)
Rounds every corner that has room for it with an arc of a given radius, within a tolerance.
- Flatten()
Approximates the chain as a straight one, cutting each arc finely enough that it strays no further than the automatic share of its radius.
- Flatten(double)
Approximates the chain as a straight one, cutting each arc so that it strays no further than a chord tolerance.
- GetBulgeAt(int)
Gets the bulge of the edge leaving a vertex.
- GetClosestEdge(GeoArc2)
Gets the edge of this chain nearest an arc.
- GetClosestEdge(GeoArc2, Tolerance)
Gets the edge of this chain nearest an arc, within a tolerance.
- GetClosestEdge(GeoCircle2)
Gets the edge of this chain nearest a circle.
- GetClosestEdge(GeoCircle2, Tolerance)
Gets the edge of this chain nearest a circle, within a tolerance.
- GetClosestEdge(GeoEdge2)
Gets the edge of this curved chain nearest an edge.
- GetClosestEdge(GeoEdge2, Tolerance)
Gets the edge of this curved chain nearest an edge, within a tolerance.
- GetClosestEdge(GeoLine2)
Gets the edge of this chain nearest a segment.
- GetClosestEdge(GeoLine2, Tolerance)
Gets the edge of this chain nearest a segment, within a tolerance.
- GetClosestEdge(GeoPoint2)
Gets the edge of this chain nearest a point.
- GetClosestEdge(GeoPoint2, Tolerance)
Gets the edge of this chain nearest a point, within a tolerance.
- GetClosestPointOnBoundary(GeoPoint2)
Gets the point of the chain nearest a point.
- GetClosestPointOnBoundary(GeoPoint2, Tolerance)
Gets the point of the chain nearest a point, within a tolerance.
- GetDistanceAtParameter(double)
Gets the distance along the chain at a normalized parameter.
- GetDistanceAtPoint(GeoPoint2)
Gets how far along the chain the point nearest a point lies.
- GetDistanceAtPoint(GeoPoint2, Tolerance)
Gets how far along the chain the point nearest a point lies, within a tolerance.
- GetEdgeAt(int)
Gets the edge at an index.
- GetEdges()
Enumerates the edges of the chain, in order.
- GetHashCode()
Returns the hash code for this chain.
- GetIntersections(GeoArc2)
Gets the points where the chain meets an arc.
- GetIntersections(GeoArc2, Tolerance)
Gets the points where the chain meets an arc, within a tolerance.
- GetIntersections(GeoCircle2)
Gets the points where the chain meets a circle.
- GetIntersections(GeoCircle2, Tolerance)
Gets the points where the chain meets a circle, within a tolerance.
- GetIntersections(GeoEdge2)
Gets every point where this curved chain crosses an edge.
- GetIntersections(GeoEdge2, Tolerance)
Gets every point where this curved chain crosses an edge, within a tolerance.
- GetIntersections(GeoFace2)
Gets every point where this curved chain crosses the boundary of a face, using the default tolerance.
- GetIntersections(GeoFace2, Tolerance)
Gets every point where this curved chain crosses the boundary of a face, within a tolerance.
- GetIntersections(GeoLine2)
Gets the points where the chain meets a straight segment.
- GetIntersections(GeoLine2, Tolerance)
Gets the points where the chain meets a straight segment, within a tolerance.
- GetIntersections(GeoPolygon2)
Gets the points where the chain meets a straight loop.
- GetIntersections(GeoPolygon2, Tolerance)
Gets the points where the chain meets a straight loop, within a tolerance.
- GetIntersections(GeoPolygonArc2)
Gets the points where the chain meets a loop that may curve.
- GetIntersections(GeoPolygonArc2, Tolerance)
Gets the points where the chain meets a loop that may curve, within a tolerance.
- GetIntersections(GeoPolyline2)
Gets the points where the chain meets a straight chain.
- GetIntersections(GeoPolyline2, Tolerance)
Gets the points where the chain meets a straight chain, within a tolerance.
- GetIntersections(GeoPolylineArc2)
Gets the points where the chain meets a chain that may curve.
- GetIntersections(GeoPolylineArc2, Tolerance)
Gets the points where the chain meets a chain that may curve, within a tolerance.
- GetIntersections(GeoRectangle2)
Gets the points where this curved chain meets a rectangle.
- GetIntersections(GeoRectangle2, Tolerance)
Gets the points where this curved chain meets a rectangle, within a tolerance.
- GetIntersections(GeoTriangle2)
Gets every point where this curved chain meets the edges of a triangle, using the default tolerance.
- GetIntersections(GeoTriangle2, Tolerance)
Gets every point where this curved chain meets the edges of a triangle, within a tolerance.
- GetParameterAtDistance(double)
Gets the normalized parameter at a distance along the chain.
- GetParameterAtPoint(GeoPoint2)
Gets the normalized parameter of the point of the chain nearest a point.
- GetParameterAtPoint(GeoPoint2, Tolerance)
Gets the normalized parameter of the point of the chain nearest a point, within a tolerance.
- GetPointAtDistance(double)
Gets the point a distance along the chain.
- GetPointAtParameter(double)
Gets the point at a normalized parameter along the chain, where 0 is its start and 1 its end.
- GetShortestLineTo(GeoArc2)
Gets the shortest segment joining this curved chain to an arc.
- GetShortestLineTo(GeoArc2, Tolerance)
Gets the shortest segment joining this curved chain to an arc, within a tolerance.
- GetShortestLineTo(GeoCircle2)
Gets the shortest segment joining this curved chain to a circle.
- GetShortestLineTo(GeoCircle2, Tolerance)
Gets the shortest segment joining this curved chain to a circle, within a tolerance.
- GetShortestLineTo(GeoEdge2)
Gets the shortest segment leaving this curved chain and landing on an edge.
- GetShortestLineTo(GeoEdge2, Tolerance)
Gets the shortest segment leaving this curved chain and landing on an edge, within a tolerance.
- GetShortestLineTo(GeoFace2)
Gets the shortest segment leaving this curved chain and landing on the boundary of a face, using the default tolerance.
- GetShortestLineTo(GeoFace2, Tolerance)
Gets the shortest segment leaving this curved chain and landing on the boundary of a face, within a tolerance.
- GetShortestLineTo(GeoLine2)
Gets the shortest segment joining this curved chain to a segment.
- GetShortestLineTo(GeoLine2, Tolerance)
Gets the shortest segment joining this curved chain to a segment, within a tolerance.
- GetShortestLineTo(GeoPolygon2)
Gets the shortest segment joining this curved chain to a polygon.
- GetShortestLineTo(GeoPolygon2, Tolerance)
Gets the shortest segment joining this curved chain to a polygon, within a tolerance.
- GetShortestLineTo(GeoPolygonArc2)
Gets the shortest segment joining this curved chain to a curved loop.
- GetShortestLineTo(GeoPolygonArc2, Tolerance)
Gets the shortest segment joining this curved chain to a curved loop, within a tolerance.
- GetShortestLineTo(GeoPolyline2)
Gets the shortest segment joining this curved chain to a polyline.
- GetShortestLineTo(GeoPolyline2, Tolerance)
Gets the shortest segment joining this curved chain to a polyline, within a tolerance.
- GetShortestLineTo(GeoPolylineArc2)
Gets the shortest segment joining this curved chain to another curved chain.
- GetShortestLineTo(GeoPolylineArc2, Tolerance)
Gets the shortest segment joining this curved chain to another curved chain, within a tolerance.
- GetShortestLineTo(GeoRectangle2)
Gets the shortest segment joining this curved chain to a rectangle.
- GetShortestLineTo(GeoRectangle2, Tolerance)
Gets the shortest segment joining this curved chain to a rectangle, within a tolerance.
- GetShortestLineTo(GeoTriangle2)
Gets the shortest segment leaving this curved chain and landing on a triangle, using the default tolerance.
- GetShortestLineTo(GeoTriangle2, Tolerance)
Gets the shortest segment leaving this curved chain and landing on a triangle, within a tolerance.
- IsEqualTo(GeoPolylineArc2)
Determines whether another chain draws the same curve, within the default tolerance.
- IsEqualTo(GeoPolylineArc2, Tolerance)
Determines whether another chain draws the same curve, within a tolerance.
- IsPointOn(GeoPoint2)
Determines whether a point lies on the chain.
- IsPointOn(GeoPoint2, Tolerance)
Determines whether a point lies on the chain, within a tolerance.
- Locate(GeoPoint2)
Says where a point lies against the chain.
- Locate(GeoPoint2, Tolerance)
Says where a point lies against the chain, within a tolerance.
- Offset(double)
Offsets the chain, keeping its arcs as arcs.
- Offset(double, OffsetJoin)
Offsets the chain, filling opened corners a given way.
- Offset(double, OffsetJoin, Tolerance)
Offsets the chain, filling opened corners a given way, within a tolerance.
- Offset(double, OffsetOptions)
Offsets the chain, with options.
- Offset(double, OffsetOptions, Tolerance)
Offsets the chain, with options, within a tolerance.
- Offset(double, Tolerance)
Offsets the chain, within a tolerance.
- Reverse()
Gets the chain running the other way, from its end to its start.
- RotateBy(double, GeoPoint2)
Gets the chain turned about a point.
- SplitAtDistances(IEnumerable<double>)
Cuts the chain at distances along it.
- SplitAtDistances(IEnumerable<double>, Tolerance)
Cuts the chain at distances along it, within a tolerance.
- ToPolygonArc2()
Gets the loop that closes the chain, joining its last vertex back to its first.
- ToPolyline3(GeoCoordinateSystem3)
Lays the chain out in a plane in space, cutting its arcs into straight pieces.
- ToPolyline3(GeoCoordinateSystem3, double)
Lays the chain out in a plane in space, cutting its arcs no further than a chord tolerance from the curve.
- ToString()
Describes the chain.
- TransformBy(GeoTransform2)
Gets the chain under a transformation.
- Translate(GeoVector2)
Gets the chain moved by a vector.
- TryChamferAt(int, double, double, out GeoPolylineArc2)
Chamfers one corner of the chain, using the default tolerance.
- TryChamferAt(int, double, double, out GeoPolylineArc2, Tolerance)
Chamfers one corner of the chain, within a tolerance.
- TryFilletAt(int, double, out GeoPolylineArc2)
Rounds one corner of the chain, using the default tolerance.
- TryFilletAt(int, double, out GeoPolylineArc2, Tolerance)
Rounds one corner of the chain, within a tolerance.
- TryIntersectWith(GeoArc2, out GeoPoint2[])
Tries to find where this curved chain crosses a arc, using the default tolerance.
- TryIntersectWith(GeoArc2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a arc, within a tolerance.
- TryIntersectWith(GeoCircle2, out GeoPoint2[])
Tries to find where this curved chain crosses a circle, using the default tolerance.
- TryIntersectWith(GeoCircle2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a circle, within a tolerance.
- TryIntersectWith(GeoEdge2, out GeoPoint2[])
Tries to find where this curved chain crosses an edge.
- TryIntersectWith(GeoEdge2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses an edge, within a tolerance.
- TryIntersectWith(GeoLine2, out GeoPoint2[])
Tries to find where this curved chain crosses a segment, using the default tolerance.
- TryIntersectWith(GeoLine2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a segment, within a tolerance.
- TryIntersectWith(GeoPolygon2, out GeoPoint2[])
Tries to find where this curved chain crosses a polygon, using the default tolerance.
- TryIntersectWith(GeoPolygon2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a polygon, within a tolerance.
- TryIntersectWith(GeoPolygonArc2, out GeoPoint2[])
Tries to find where this curved chain crosses a curved loop, using the default tolerance.
- TryIntersectWith(GeoPolygonArc2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a curved loop, within a tolerance.
- TryIntersectWith(GeoPolyline2, out GeoPoint2[])
Tries to find where this curved chain crosses a polyline, using the default tolerance.
- TryIntersectWith(GeoPolyline2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a polyline, within a tolerance.
- TryIntersectWith(GeoPolylineArc2, out GeoPoint2[])
Tries to find where this curved chain crosses a curved chain, using the default tolerance.
- TryIntersectWith(GeoPolylineArc2, out GeoPoint2[], Tolerance)
Tries to find where this curved chain crosses a curved chain, within a tolerance.
- TrySplitAtDistance(double, out GeoPolylineArc2, out GeoPolylineArc2)
Cuts the chain in two at a distance along it.
- TrySplitAtDistance(double, out GeoPolylineArc2, out GeoPolylineArc2, Tolerance)
Cuts the chain in two at a distance along it, within a tolerance.
- TrySplitAtDistance(double, out GeoPolylineArc2[])
Splits the chain at an arc length from its start, the pieces as a list, using the default tolerance.
- TrySplitAtDistance(double, out GeoPolylineArc2[], Tolerance)
Splits the chain at an arc length from its start, the pieces as a list, within a tolerance.
- TrySplitBy(GeoArc2, out GeoPolylineArc2[])
Cuts the chain wherever it meets an arc.
- TrySplitBy(GeoArc2, out GeoPolylineArc2[], Tolerance)
Cuts the chain wherever it meets an arc, within a tolerance.
- TrySplitBy(GeoLine2, out GeoPolylineArc2[])
Cuts the chain wherever it meets a straight segment.
- TrySplitBy(GeoLine2, out GeoPolylineArc2[], Tolerance)
Cuts the chain wherever it meets a straight segment, within a tolerance.
- TrySplitBy(GeoPoint2, out GeoPolylineArc2, out GeoPolylineArc2)
Cuts the chain in two at a point on it.
- TrySplitBy(GeoPoint2, out GeoPolylineArc2, out GeoPolylineArc2, Tolerance)
Cuts the chain in two at a point on it, within a tolerance.
- TrySplitBy(GeoPoint2[], out GeoPolylineArc2[])
Cuts the chain at points on it.
- TrySplitBy(GeoPolygon2, out GeoPolylineArc2[])
Cuts the chain wherever it meets a straight loop.
- TrySplitBy(GeoPolygonArc2, out GeoPolylineArc2[])
Cuts the chain wherever it meets a loop that may curve.
- TryTrimTo(GeoPoint2, LineEnd, out GeoPolylineArc2)
Shortens the chain at one end back to a point on it.
- TryTrimTo(GeoPoint2, LineEnd, out GeoPolylineArc2, Tolerance)
Shortens the chain at one end back to a point on it, within a tolerance.
Operators
- operator +(GeoPolylineArc2, GeoVector2)
Translates a chain by a vector.
- operator ==(GeoPolylineArc2, GeoPolylineArc2)
Determines whether two chains hold exactly the same vertices and bulges.
- operator !=(GeoPolylineArc2, GeoPolylineArc2)
Determines whether two chains hold different vertices or bulges.
- operator -(GeoPolylineArc2, GeoVector2)
Translates a chain against a vector.