Table of Contents

Struct GeoEdge2

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

Whether an edge touches another shape.

public readonly struct GeoEdge2 : IEquatable<GeoEdge2>
Implements
Inherited Members

Constructors

GeoEdge2(GeoArc2)

Initializes the edge that draws an arc.

GeoEdge2(GeoPoint2, GeoPoint2)

Initializes a straight edge between two points.

GeoEdge2(GeoPoint2, GeoPoint2, double)

Initializes an edge between two points, straight or bulged into an arc.

Properties

Bulge

Gets the bulge: the tangent of a quarter of the angle an arc sweeps, or zero for a straight segment.

EndPoint

Gets the point the edge ends at.

IsArc

Gets a value indicating whether the edge is an arc rather than a straight segment.

IsValid

Gets whether this is a shape a constructor could have made: both ends are valid points and the bulge a number.

Length

Gets the length of the edge: along the arc when it is one, and straight across otherwise.

MidPoint

Gets the point half way along the edge: the middle of its segment or of its arc.

StartPoint

Gets the point the edge starts at.

Methods

Clone()

Creates a copy of this edge.

CollidesWith(GeoArc2)

Checks whether the edge touches an arc.

CollidesWith(GeoArc2, Tolerance)

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

CollidesWith(GeoCircle2)

Checks whether the edge touches a circle.

CollidesWith(GeoCircle2, Tolerance)

Checks whether the edge touches a circle, within a tolerance.

CollidesWith(GeoEdge2)

Checks whether the edge touches another edge.

CollidesWith(GeoEdge2, Tolerance)

Checks whether the edge touches another edge, within a tolerance.

CollidesWith(GeoFace2)

Checks whether this edge touches a face.

CollidesWith(GeoFace2, Tolerance)

Checks whether this edge touches a face, within a tolerance.

CollidesWith(GeoLine2)

Checks whether the edge touches a segment.

CollidesWith(GeoLine2, Tolerance)

Checks whether the edge touches a segment, within a tolerance.

CollidesWith(GeoPolygon2)

Checks whether the edge touches a polygon.

CollidesWith(GeoPolygon2, Tolerance)

Checks whether the edge touches a polygon, within a tolerance.

CollidesWith(GeoPolygonArc2)

Checks whether the edge touches a curved loop.

CollidesWith(GeoPolygonArc2, Tolerance)

Checks whether the edge touches a curved loop, within a tolerance.

CollidesWith(GeoPolyline2)

Checks whether the edge touches a polyline.

CollidesWith(GeoPolyline2, Tolerance)

Checks whether the edge touches a polyline, within a tolerance.

CollidesWith(GeoPolylineArc2)

Checks whether the edge touches a curved chain.

CollidesWith(GeoPolylineArc2, Tolerance)

Checks whether the edge touches a curved chain, within a tolerance.

CollidesWith(GeoRectangle2)

Checks whether the edge touches a rectangle.

CollidesWith(GeoRectangle2, Tolerance)

Checks whether the edge touches a rectangle, within a tolerance.

CollidesWith(GeoTriangle2)

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

CollidesWith(GeoTriangle2, Tolerance)

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

DistanceTo(GeoArc2)

Gets the distance from the edge to an arc.

DistanceTo(GeoArc2, Tolerance)

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

DistanceTo(GeoCircle2)

Gets the distance from the edge to a circle.

DistanceTo(GeoCircle2, Tolerance)

Gets the distance from the edge to a circle, within a tolerance.

DistanceTo(GeoEdge2)

Gets the distance from the edge to another edge.

DistanceTo(GeoEdge2, Tolerance)

Gets the distance from the edge to another edge, within a tolerance.

DistanceTo(GeoLine2)

Gets the distance from the edge to a straight segment.

DistanceTo(GeoLine2, Tolerance)

Gets the distance from the edge to a straight segment, within a tolerance.

DistanceTo(GeoPoint2)

Gets the distance from the edge to a point.

DistanceTo(GeoPoint2, Tolerance)

Gets the distance from the edge to a point, within a tolerance.

DistanceTo(GeoPolygon2)

Gets the distance from this edge to a polygon.

DistanceTo(GeoPolygonArc2)

Gets the distance from this edge to a curved loop.

DistanceTo(GeoPolygonArc2, Tolerance)

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

DistanceTo(GeoPolyline2)

Gets the distance from this edge to a polyline.

DistanceTo(GeoPolylineArc2)

Gets the distance from this edge to a curved chain.

DistanceTo(GeoPolylineArc2, Tolerance)

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

DistanceTo(GeoRectangle2)

Gets the distance from this edge to a rectangle.

DistanceTo(GeoTriangle2)

Gets the distance from this edge to a triangle.

Equals(GeoEdge2)

Determines whether another edge holds exactly the same ends and bulge.

Equals(object)

Determines whether the specified object is an equal edge.

Extend(double, LineEnd)

Lengthens the edge at one end, along itself.

Extend(double, LineEnd, Tolerance)

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

ExtendToLength(double, LineEnd)

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

ExtendToLength(double, LineEnd, Tolerance)

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

GetChord()

Gets the chord of the edge: the straight segment between its ends, whether or not it bulges.

GetClosestEdge(GeoPolygonArc2)

Gets the edge of this edge nearest a curved loop.

GetClosestEdge(GeoPolygonArc2, Tolerance)

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

GetClosestEdge(GeoPolylineArc2)

Gets the edge of this edge nearest a curved chain.

GetClosestEdge(GeoPolylineArc2, Tolerance)

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

GetClosestPointOnBoundary(GeoPoint2)

Gets the point of the edge closest to a point.

GetClosestPointOnBoundary(GeoPoint2, Tolerance)

Gets the point of the edge closest to a point, within a tolerance.

GetHashCode()

Returns the hash code for this edge.

GetIntersections(GeoArc2)

Gets the points where the edge meets an arc.

GetIntersections(GeoArc2, Tolerance)

Gets the points where the edge meets an arc, within a tolerance.

GetIntersections(GeoCircle2)

Gets every point where this edge crosses a circle.

GetIntersections(GeoCircle2, Tolerance)

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

GetIntersections(GeoEdge2)

Gets the points where the edge meets another edge.

GetIntersections(GeoEdge2, Tolerance)

Gets the points where the edge meets another edge, within a tolerance.

GetIntersections(GeoFace2)

Gets every point where this edge crosses a face.

GetIntersections(GeoFace2, Tolerance)

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

GetIntersections(GeoLine2)

Gets the points where the edge meets a straight segment.

GetIntersections(GeoLine2, Tolerance)

Gets the points where the edge meets a straight segment, within a tolerance.

GetIntersections(GeoPolygon2)

Gets every point where this edge crosses a polygon.

GetIntersections(GeoPolygon2, Tolerance)

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

GetIntersections(GeoPolygonArc2)

Gets every point where this edge crosses a curved loop.

GetIntersections(GeoPolygonArc2, Tolerance)

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

GetIntersections(GeoPolyline2)

Gets every point where this edge crosses a polyline.

GetIntersections(GeoPolyline2, Tolerance)

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

GetIntersections(GeoPolylineArc2)

Gets every point where this edge crosses a curved chain.

GetIntersections(GeoPolylineArc2, Tolerance)

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

GetIntersections(GeoRectangle2)

Gets every point where this edge crosses a rectangle.

GetIntersections(GeoRectangle2, Tolerance)

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

GetIntersections(GeoTriangle2)

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

GetIntersections(GeoTriangle2, Tolerance)

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

GetParameterAtPoint(GeoPoint2)

Gets the normalized parameter of the point of the edge nearest a point, where 0 is its start and 1 its end.

GetParameterAtPoint(GeoPoint2, Tolerance)

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

GetPointAtParameter(double)

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

GetShortestLineTo(GeoArc2)

Gets the shortest segment joining the edge to an arc.

GetShortestLineTo(GeoArc2, Tolerance)

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

GetShortestLineTo(GeoCircle2)

Gets the shortest segment joining the edge to a circle.

GetShortestLineTo(GeoCircle2, Tolerance)

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

GetShortestLineTo(GeoEdge2)

Gets the shortest segment joining the edge to another edge.

GetShortestLineTo(GeoEdge2, Tolerance)

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

GetShortestLineTo(GeoFace2)

Gets the shortest segment leaving this edge and landing on a face.

GetShortestLineTo(GeoFace2, Tolerance)

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

GetShortestLineTo(GeoLine2)

Gets the shortest segment joining the edge to a straight segment.

GetShortestLineTo(GeoLine2, Tolerance)

Gets the shortest segment joining the edge to a straight segment, within a tolerance.

GetShortestLineTo(GeoPolygon2)

Gets the shortest segment leaving this edge and landing on a polygon.

GetShortestLineTo(GeoPolygon2, Tolerance)

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

GetShortestLineTo(GeoPolygonArc2)

Gets the shortest segment leaving this edge and landing on a curved loop.

GetShortestLineTo(GeoPolygonArc2, Tolerance)

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

GetShortestLineTo(GeoPolyline2)

Gets the shortest segment leaving this edge and landing on a polyline.

GetShortestLineTo(GeoPolyline2, Tolerance)

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

GetShortestLineTo(GeoPolylineArc2)

Gets the shortest segment leaving this edge and landing on a curved chain.

GetShortestLineTo(GeoPolylineArc2, Tolerance)

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

GetShortestLineTo(GeoRectangle2)

Gets the shortest segment leaving this edge and landing on a rectangle.

GetShortestLineTo(GeoRectangle2, Tolerance)

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

GetShortestLineTo(GeoTriangle2)

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

GetShortestLineTo(GeoTriangle2, Tolerance)

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

IsEqualTo(GeoEdge2)

Determines whether another edge draws the same piece, within the default tolerance.

IsEqualTo(GeoEdge2, Tolerance)

Determines whether another edge draws the same piece, within a tolerance.

IsPointOn(GeoPoint2)

Determines whether a point lies on this edge.

IsPointOn(GeoPoint2, Tolerance)

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

Locate(GeoPoint2)

Says where a point lies with respect to this edge.

Locate(GeoPoint2, Tolerance)

Says where a point lies with respect to this edge, within a tolerance.

Reverse()

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

RotateBy(double, GeoPoint2)

Gets the edge turned about a point.

ToArc()

Gets the edge as an arc.

ToLine()

Gets the edge as a straight segment.

ToString()

Describes the edge.

TransformBy(GeoTransform2)

Gets the edge under a transformation.

Translate(GeoVector2)

Gets the edge moved by a vector.

TryIntersectWith(GeoArc2, out GeoPoint2[])

Tries to find where this edge crosses an arc.

TryIntersectWith(GeoArc2, out GeoPoint2[], Tolerance)

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

TryIntersectWith(GeoCircle2, out GeoPoint2[])

Tries to find where this edge crosses a circle.

TryIntersectWith(GeoCircle2, out GeoPoint2[], Tolerance)

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

TryIntersectWith(GeoPolygonArc2, out GeoPoint2[])

Tries to find where this edge crosses a curved loop.

TryIntersectWith(GeoPolygonArc2, out GeoPoint2[], Tolerance)

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

TryIntersectWith(GeoPolylineArc2, out GeoPoint2[])

Tries to find where this edge crosses a curved chain.

TryIntersectWith(GeoPolylineArc2, out GeoPoint2[], Tolerance)

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

TrySplitAtParameter(double, out GeoEdge2, out GeoEdge2, Tolerance)

Splits the edge at a normalized parameter along it.

TryTrimTo(GeoPoint2, LineEnd, out GeoEdge2)

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

TryTrimTo(GeoPoint2, LineEnd, out GeoEdge2, Tolerance)

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

Operators

operator ==(GeoEdge2, GeoEdge2)

Determines whether two edges hold exactly the same values.

operator !=(GeoEdge2, GeoEdge2)

Determines whether two edges hold different values.