Back to class index
Plane[Class Summary]
normal
d
ctor (+6 overloads)
Set(v1,v2,v3) (+1 overload)
ReverseNormal()
PointOnPlane()[const]
Transform(transform) (+3 overloads)
IsInPositiveDirection(directionVector)[const]
IsOnPositiveSide(point)[const]
ExamineSide(triangle)[const]
AreOnSameSide(p1,p2)[const]
Distance(point)[const] (+3 overloads)
SignedDistance(point)[const]
OrthoProjection()[const]
Project(point)[const] (+5 overloads)
ObliqueProjection(...)[const]
ObliqueProject(...)[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]
IsParallel(plane,epsilon)[const]
DihedralAngle(plane)[const]
Intersects(...)[const] (+14 overloads)
Clip(line)[const] (+3 overloads)
PassesThroughOrigin(epsilon)[const]
GenerateCircle(...)[const]

Plane::ObliqueProjection

Syntax

float3x4 Plane::ObliqueProjection(const float3 &obliqueProjectionDir) const; [5 lines of code]

Computes the affine transformation matrix that projects onto this plane in an oblique (slanted) angle.

Parameters

const float3 &obliqueProjectionDirThe projection direction. This vector must be normalized. If a vector collinear to the normal of this plane is specified, this function returns the same matrix as calling OrthoProjection() would.

Performance

8.21nsecs/call ≈ 121.8M calls/second ≈ 2.03M calls/frame (@ 60fps).
This function does not perform dynamic memory allocation.

See Also

OrthoProjection(), MirrorMatrix(), ObliqueProject().

Work in progress:

Todo: in float3x4 Plane::ObliqueProjection(const float3 &obliqueProjectionDir) const:
Implement.

Leave a Comment

Name:
Comments:
Captcha:captcha image Type in the black symbols:
Back to class index