Inheritance diagram for osg::Plane:
Public Member Functions | |
Plane () | |
Plane (const Plane &pl) | |
Plane (float a, float b, float c, float d) | |
Plane (const Vec4 &vec) | |
Plane (const Vec3 &norm, float d) | |
Plane (const Vec3 &v1, const Vec3 &v2, const Vec3 &v3) | |
Plane (const Vec3 &norm, const Vec3 &point) | |
Plane & | operator= (const Plane &pl) |
void | set (const Plane &pl) |
void | set (float a, float b, float c, float d) |
void | set (const Vec4 &vec) |
void | set (const Vec3 &norm, float d) |
void | set (const Vec3 &v1, const Vec3 &v2, const Vec3 &v3) |
void | set (const Vec3 &norm, const Vec3 &point) |
void | flip () |
flip/reverse the orientation of the plane. | |
void | makeUnitLength () |
void | calculateUpperLowerBBCorners () |
calculate the upper and lower bounding box corners to be used in the intersect(BoundingBox&) method for speeding calculations. | |
bool | valid () const |
bool | operator== (const Plane &plane) const |
bool | operator!= (const Plane &plane) const |
bool | operator< (const Plane &plane) const |
float * | ptr () |
const float * | ptr () const |
Vec4 & | asVec4 () |
const Vec4 & | asVec4 () const |
float & | operator[] (unsigned int i) |
float | operator[] (unsigned int i) const |
osg::Vec3 | getNormal () const |
float | distance (const osg::Vec3 &v) const |
calculate the distance between a point and the plane. | |
int | intersect (const std::vector< Vec3 > &vertices) const |
intersection test between plane and vertex list return 1 if the bs is completely above plane, return 0 if the bs intersects the plane, return -1 if the bs is completely below the plane. | |
int | intersect (const BoundingSphere &bs) const |
intersection test between plane and bounding sphere. | |
int | intersect (const BoundingBox &bb) const |
intersection test between plane and bounding sphere. | |
void | transform (const osg::Matrix &matrix) |
Transform the plane by matrix. | |
void | transformProvidingInverse (const osg::Matrix &matrix) |
Transform the plane by providing a pre inverted matrix. | |
Protected Attributes | |
Vec4 | _fv |
unsigned int | _upperBBCorner |
unsigned int | _lowerBBCorner |
It can be used to represent an infinite plane.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
calculate the upper and lower bounding box corners to be used in the intersect(BoundingBox&) method for speeding calculations.
|
|
calculate the distance between a point and the plane.
|
|
flip/reverse the orientation of the plane.
|
|
|
|
intersection test between plane and bounding sphere. return 1 if the bs is completely above plane, return 0 if the bs intersects the plane, return -1 if the bs is completely below the plane. |
|
intersection test between plane and bounding sphere. return 1 if the bs is completely above plane, return 0 if the bs intersects the plane, return -1 if the bs is completely below the plane. |
|
intersection test between plane and vertex list return 1 if the bs is completely above plane, return 0 if the bs intersects the plane, return -1 if the bs is completely below the plane.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Transform the plane by matrix. Note, this operation carries out the calculation of the inverse of the matrix since a plane must be multiplied by the inverse transposed to transform it. This make this operation expensive. If the inverse has been already calculated elsewhere then use transformProvidingInverse() instead. See http://www.worldserver.com/turk/computergraphics/NormalTransformations.pdf |
|
Transform the plane by providing a pre inverted matrix. see transform for details. |
|
|
|
|
|
|
|
|