Back to class index
Plane[Class Summary]
normal
d
ctor (+6 overloads)
IsDegenerate()[const]
Set(v1,v2,v3) (+1 overload)
ReverseNormal()
PointOnPlane()[const]
Point(u,v)[const] (+1 overload)
Translate(offset)
Transform(transform) (+3 overloads)
IsInPositiveDirection(directionVector)[const]
IsOnPositiveSide(point)[const]
ExamineSide(triangle)[const]
AreOnSameSide(p1,p2)[const]
Distance(point)[const] (+4 overloads)
SignedDistance(point)[const] (+11 overloads)
OrthoProjection()[const]
Project(point)[const] (+5 overloads)
ProjectToNegativeHalf(point)[const]
ProjectToPositiveHalf(point)[const]
MirrorMatrix()[const]
Mirror(point)[const]
Refract(...)[const]
ClosestPoint(point)[const] (+2 overloads)
Contains(point,epsilon)[const] (+6 overloads)
SetEquals(plane,epsilon)[const]
Equals(other,epsilon)[const]
BitEquals(other)[const]
IsParallel(plane,epsilon)[const]
DihedralAngle(plane)[const]
Intersects(...)[const] (+14 overloads)
Clip(line)[const] (+3 overloads)
PassesThroughOrigin(epsilon)[const]
GenerateCircle(...)[const]
ToString()[const]
SerializeToString()[const]
SerializeToCodeString()[const]
IntersectLinePlane(...)[static]
FromString(str,outEndStr)[static] (+1 overload)

Plane::Project

Syntax

float4 Plane::Project(const float4 &point) const; [5 lines of code]
LineSegment Plane::Project(const LineSegment &lineSegment) const; [4 lines of code]
Line Plane::Project(const Line &line, bool *nonDegenerate) const; [10 lines of code]
Ray Plane::Project(const Ray &ray, bool *nonDegenerate) const; [10 lines of code]
Triangle Plane::Project(const Triangle &triangle) const; [8 lines of code]
Polygon Plane::Project(const Polygon &polygon) const; [8 lines of code]

Projects the given object onto this plane orthographically.

Note
This mapping can be expressed as a float3x4 matrix operation. See the OrthoProjection() function.

Parameters

bool *nonDegenerate [out]If the line or ray is perpendicular to the plane, the projection is a single point. In that case, the .pos parameter of the returned object will specify the point location, the .dir parameter of the object will be undefined and the nonDegenerate pointer will be set to false. This pointer may be null.

See Also

OrthoProjection(), ProjectToPositiveHalf(), ProjectToNegativeHalf().