Table of Contents

Struct GeoPlane3

Namespace
GeometryHelper.Geometry
Assembly
GeometryHelper.dll

Whether a plane touches another shape.

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

Constructors

GeoPlane3(GeoPoint3, GeoVector3)

Initializes a new plane.

Properties

DistanceFromWorldOrigin

Gets the signed distance from the world origin to the plane along its normal, that is the d of the plane equation n ยท x = d.

IsValid

Gets whether this is a shape a constructor could have made: the origin is a valid point and the normal of unit length.

Normal

Gets the normal vector of the plane, always normalized.

Origin

Gets a point lying on the plane.

XY

Gets the world XY plane, with its normal along +Z.

XZ

Gets the world XZ plane, with its normal along +Y.

YZ

Gets the world YZ plane, with its normal along +X.

Methods

Clone()

Creates a copy of this plane.

CollidesWith(GeoArc3)

Checks whether this plane touches an arc, using the default tolerance.

CollidesWith(GeoArc3, Tolerance)

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

CollidesWith(GeoCircle3)

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

CollidesWith(GeoCircle3, Tolerance)

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

CollidesWith(GeoEdge3)

Checks whether this plane touches an edge.

CollidesWith(GeoEdge3, Tolerance)

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

CollidesWith(GeoLine3)

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

CollidesWith(GeoLine3, Tolerance)

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

CollidesWith(GeoPolygonArc3)

Checks whether this plane touches a curved loop.

CollidesWith(GeoPolygonArc3, Tolerance)

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

CollidesWith(GeoPolylineArc3)

Checks whether this plane touches a curved chain.

CollidesWith(GeoPolylineArc3, Tolerance)

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

ContainsAll(IEnumerable<GeoPoint3>)

Checks whether every one of a set of points lies on the plane, using the default tolerance.

ContainsAll(IEnumerable<GeoPoint3>, Tolerance)

Checks whether every one of a set of points lies on the plane, within a tolerance.

DistanceTo(GeoLine3)

Calculates the shortest distance from a line segment to the plane. A segment that crosses the plane is at distance zero.

DistanceTo(GeoPlane3)

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

DistanceTo(GeoPlane3, Tolerance)

Gets the distance from this plane to a plane, within a tolerance.

DistanceTo(GeoPoint3)

Calculates the unsigned distance from a point to the plane.

DistanceTo(GeoPolyline3)

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

DistanceTo(GeoPolyline3, Tolerance)

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

DistanceTo(GeoSolid3)

Gets the distance from this plane to a solid, using the default tolerance.

DistanceTo(GeoSolid3, Tolerance)

Gets the distance from this plane to a solid, within a tolerance.

Equals(GeoPlane3)

Determines whether another plane has exactly the same origin and normal.

Equals(object)

Determines whether the specified object is equal to the current plane.

Flip()

Gets the same plane with its normal reversed, so the two sides swap roles.

FromThreePoints(GeoPoint3, GeoPoint3, GeoPoint3)

Creates the plane through three points, oriented by the right-hand rule so that the points run counter-clockwise when seen from the side the normal points towards.

GetAxes(out GeoVector3, out GeoVector3)

Gets a pair of orthonormal directions spanning the plane.

GetClosestPointOnBoundary(GeoPoint3)

Gets the point of this plane nearest a target point.

GetClosestPointOnBoundary(GeoPoint3, Tolerance)

Gets the point of this plane nearest a target point, within a tolerance.

GetHashCode()

Returns the hash code for this instance.

GetIntersections(GeoArc3)

Gets every point where an arc crosses this plane, using the default tolerance.

GetIntersections(GeoArc3, Tolerance)

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

GetIntersections(GeoCircle3)

Gets every point where a circle crosses this plane, using the default tolerance.

GetIntersections(GeoCircle3, Tolerance)

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

GetIntersections(GeoEdge3)

Gets every point where an edge crosses this plane.

GetIntersections(GeoEdge3, Tolerance)

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

GetIntersections(GeoLine3)

Gets every point where a segment crosses this plane.

GetIntersections(GeoLine3, Tolerance)

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

GetIntersections(GeoPolygonArc3)

Gets every point where a curved loop crosses this plane.

GetIntersections(GeoPolygonArc3, Tolerance)

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

GetIntersections(GeoPolylineArc3)

Gets every point where a curved chain crosses this plane.

GetIntersections(GeoPolylineArc3, Tolerance)

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

GetIntersections(GeoSolid3)

Gets every point where the edges of a solid cross this plane, using the default tolerance.

GetIntersections(GeoSolid3, Tolerance)

Gets every point where the edges of a solid cross this plane, within a tolerance.

GetSide(GeoPoint3)

Determines which side of the plane a point lies on, using the default tolerance.

GetSide(GeoPoint3, Tolerance)

Determines which side of the plane a point lies on, within a tolerance.

IsEqualTo(GeoPlane3)

Compares whether this plane describes the same oriented surface as another, using the default tolerance.

IsEqualTo(GeoPlane3, Tolerance)

Compares whether this plane describes the same oriented surface as another, within a tolerance.

IsParallelTo(GeoPlane3)

Checks whether this plane is parallel to another plane using the default tolerance.

IsParallelTo(GeoPlane3, Tolerance)

Checks whether this plane is parallel to another plane within a tolerance.

IsPerpendicularTo(GeoPlane3)

Checks whether this plane is perpendicular to another plane using the default tolerance.

IsPerpendicularTo(GeoPlane3, Tolerance)

Checks whether this plane is perpendicular to another plane within a tolerance.

IsPointOn(GeoPoint3)

Checks whether a point lies on the plane using the default tolerance.

IsPointOn(GeoPoint3, Tolerance)

Checks whether a point lies on the plane within a tolerance.

Offset(double)

Gets the plane offset by a distance along its own normal.

Project(GeoPoint3)

Projects a point onto the plane.

Project(GeoVector3)

Projects a vector onto the plane, dropping the component along the normal.

SignedDistanceTo(GeoPoint3)

Calculates the signed distance from a point to the plane.

ToString()

Returns a string that represents the current plane.

TransformBy(GeoTransform3)

Applies a transformation to this plane.

Translate(GeoVector3)

Moves the plane by a vector.

TryIntersectWith(GeoArc3, out GeoPoint3[])

Tries to find where an arc crosses this plane, using the default tolerance.

TryIntersectWith(GeoArc3, out GeoPoint3[], Tolerance)

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

TryIntersectWith(GeoCircle3, out GeoPoint3[])

Tries to find where a circle crosses this plane, using the default tolerance.

TryIntersectWith(GeoCircle3, out GeoPoint3[], Tolerance)

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

TryIntersectWith(GeoLine3, out GeoPoint3)

Tries to find the point where a segment crosses this plane, using the default tolerance.

TryIntersectWith(GeoLine3, out GeoPoint3, Tolerance)

Tries to find the point where a segment crosses this plane, within a tolerance.

TryIntersectWith(GeoPlane3, out GeoRay3)

Tries to find the line where this plane meets another plane, using the default tolerance.

TryIntersectWith(GeoPlane3, out GeoRay3, Tolerance)

Tries to find the line where this plane meets another plane, within a tolerance.

TryIntersectWith(GeoRay3, out GeoPoint3)

Tries to find the point where a ray crosses this plane, using the default tolerance.

TryIntersectWith(GeoRay3, out GeoPoint3, Tolerance)

Tries to find the point where a ray crosses this plane, within a tolerance.

Operators

operator ==(GeoPlane3, GeoPlane3)

Checks if two planes have exactly the same origin and normal.

operator !=(GeoPlane3, GeoPlane3)

Checks if two planes differ in origin or normal.