HDK
|
#include <plane.h>
Public Member Functions | |
GfPlane () | |
The default constructor leaves the plane parameters undefined. More... | |
GfPlane (const GfVec3d &normal, double distanceToOrigin) | |
GfPlane (const GfVec3d &normal, const GfVec3d &point) | |
GfPlane (const GfVec3d &p0, const GfVec3d &p1, const GfVec3d &p2) | |
GfPlane (const GfVec4d &eqn) | |
void | Set (const GfVec3d &normal, double distanceToOrigin) |
GF_API void | Set (const GfVec3d &normal, const GfVec3d &point) |
GF_API void | Set (const GfVec3d &p0, const GfVec3d &p1, const GfVec3d &p2) |
GF_API void | Set (const GfVec4d &eqn) |
const GfVec3d & | GetNormal () const |
Returns the unit-length normal vector of the plane. More... | |
double | GetDistanceFromOrigin () const |
Returns the distance of the plane from the origin. More... | |
GF_API GfVec4d | GetEquation () const |
bool | operator== (const GfPlane &p) const |
bool | operator!= (const GfPlane &p) const |
double | GetDistance (const GfVec3d &p) const |
GfVec3d | Project (const GfVec3d &p) const |
Return the projection of p onto the plane. More... | |
GF_API GfPlane & | Transform (const GfMatrix4d &matrix) |
Transforms the plane by the given matrix. More... | |
void | Reorient (const GfVec3d &p) |
GF_API bool | IntersectsPositiveHalfSpace (const GfRange3d &box) const |
bool | IntersectsPositiveHalfSpace (const GfVec3d &pt) const |
Basic type: 3-dimensional plane
This class represents a three-dimensional plane as a normal vector and the distance of the plane from the origin, measured along the normal. The plane can also be used to represent a half-space: the side of the plane in the direction of the normal.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Give the coefficients of the equation of the plane. Suitable to OpenGL calls to set the clipping plane.
|
inline |
Returns true
if the given aligned bounding box is at least partially on the positive side (the one the normal points into) of the plane.
|
inline |
|
inline |
|
inline |
This constructor sets this to the plane perpendicular to normal
and that passes through point
. The passed-in normal is normalized to unit length first.
This constructor sets this to the plane that contains the three given points. The normal is constructed from the cross product of (p1
- p0
) (p2
- p0
). Results are undefined if the points are collinear.
This method sets this to the plane given by the equation eqn
[0] * x + eqn
[1] * y + eqn
[2] * z + eqn
[3] = 0.
GF_API GfPlane& GfPlane::Transform | ( | const GfMatrix4d & | matrix | ) |
Transforms the plane by the given matrix.