Back to class index

Class Plane

Summary

Specifies a plane in 3D space.

Description

This plane is an affine 2D subspace of the 3D space, meaning that its sides extend to infinity, and it does not necessarily pass through the origin.

Member Reference

PlaneSpecifies a plane in 3D space.
normalThe direction this plane is facing at.
dThe offset of this plane from the origin.
ctor (+6 overloads)The default constructor does not initialize any members of this class.
IsDegenerate()[const]
Set(v1,v2,v3) (+1 overload)Sets this plane by specifying three points on the plane.
ReverseNormal()Reverses the direction of the plane normal, while still representing the same set of points.
PointOnPlane()[const]Returns a point on this plane.
Point(u,v)[const] (+1 overload)Returns a point on this plane, parameterized at the given coordinates.
Translate(offset)Translates this Plane in world space.
Transform(transform) (+3 overloads)Applies a transformation to this plane.
IsInPositiveDirection(directionVector)[const]Tests if the given direction vector points towards the positive side of this plane.
IsOnPositiveSide(point)[const]Tests if the given point lies on the positive side of this plane.
ExamineSide(triangle)[const]Performs a Triangle-Plane intersection test.
AreOnSameSide(p1,p2)[const]Tests if two points are on the same side of this plane.
Distance(point)[const] (+4 overloads)Returns the distance of this plane to the given object.
SignedDistance(point)[const] (+11 overloads)Returns the signed distance of this plane to the given point.
OrthoProjection()[const]Computes the affine transformation matrix that projects orthographically onto this plane.
Project(point)[const] (+5 overloads)Projects the given object onto this plane orthographically.
ProjectToNegativeHalf(point)[const]Projects the given point to the negative half-space of this plane.
ProjectToPositiveHalf(point)[const]Projects the given point to the positivehalf-space of this plane.
MirrorMatrix()[const]Returns the transformation matrix that mirrors objects along this plane.
Mirror(point)[const]Mirrors the given point with respect to this plane.
Refract(...)[const]Refracts the given incident vector along this plane.
ClosestPoint(point)[const] (+2 overloads)Computes the closest point on this plane to the given object.
Contains(point,epsilon)[const] (+6 overloads)Tests if this plane contains the given object.
SetEquals(plane,epsilon)[const]Returns true if this plane represents the same set of points than the other plane.
Equals(other,epsilon)[const]Returns true if the two planes are equal, and their normals are oriented to the same direction.
BitEquals(other)[const]Compares whether this Plane and the given Plane are identical bit-by-bit in the underlying representation.
IsParallel(plane,epsilon)[const]Tests if two planes are parallel.
DihedralAngle(plane)[const]Returns the angle of intersection between two planes, in radians.
Intersects(...)[const] (+14 overloads)Computes the intersection of three planes.
Clip(line)[const] (+3 overloads)Clips a line segment against this plane.
PassesThroughOrigin(epsilon)[const]Returns true if this plane contains the origin.
GenerateCircle(...)[const]Returns a circle that lies on this plane.
ToString()[const]Returns a human-readable representation of this Plane. Most useful for debugging purposes.
SerializeToString()[const]
SerializeToCodeString()[const]Returns a string of C++ code that can be used to construct this object. Useful for generating test cases from badly behaving objects.
IntersectLinePlane(...)[static]Computes the intersection of a line and a plane.
FromString(str,outEndStr)[static] (+1 overload)
Back to class index