#include <OgrePlane.h>
Inheritance diagram for Ogre::Plane:
Public Types | |
enum | Side { NO_SIDE, POSITIVE_SIDE, NEGATIVE_SIDE } |
The "positive side" of the plane is the half space to which the plane normal points. More... | |
Public Methods | |
Plane () | |
Default constructor - sets everything to 0. | |
Plane (const Plane &rhs) | |
Plane (const Vector3 &rkNormal, Real fConstant) | |
Construct a plane through a normal, and a distance to move the plane along the normal. | |
Plane (const Vector3 &rkNormal, const Vector3 &rkPoint) | |
Plane (const Vector3 &rkPoint0, const Vector3 &rkPoint1, const Vector3 &rkPoint2) | |
Side | getSide (const Vector3 &rkPoint) const |
Real | getDistance (const Vector3 &rkPoint) const |
This is a pseudodistance. | |
void | redefine (const Vector3 &rkPoint0, const Vector3 &rkPoint1, const Vector3 &rkPoint2) |
Redefine this plane based on 3 points. | |
bool | operator== (const Plane &rhs) const |
Comparison operator. | |
Public Attributes | |
Vector3 | normal |
Real | d |
Friends | |
_OgreExport friend std::ostream & | operator<< (std::ostream &o, Plane &p) |
This equates to a vector (the normal of the plane, whose x, y and z components equate to the coefficients A, B and C respectively), and a constant (D) which is the distance along the normal you have to go to move the plane back to the origin.
Definition at line 49 of file OgrePlane.h.
|
The "positive side" of the plane is the half space to which the plane normal points. The "negative side" is the other half space. The flag "no side" indicates the plane itself. Definition at line 66 of file OgrePlane.h. |
|
Default constructor - sets everything to 0.
Definition at line 30 of file OgrePlane.cpp. |
|
Definition at line 36 of file OgrePlane.cpp. |
|
Construct a plane through a normal, and a distance to move the plane along the normal.
Definition at line 42 of file OgrePlane.cpp. References d, normal, and Ogre::Real. |
|
Definition at line 48 of file OgrePlane.cpp. References d, Ogre::Vector3::dotProduct(), and normal. |
|
Definition at line 54 of file OgrePlane.cpp. References redefine(). |
|
This is a pseudodistance. The sign of the return value is positive if the point is on the positive side of the plane, negative if the point is on the negative side, and zero if the point is on the plane. The absolute value of the return value is the true distance only when the plane normal is a unit length vector. Definition at line 60 of file OgrePlane.cpp. References d, Ogre::Vector3::dotProduct(), normal, and Ogre::Real. Referenced by Ogre::BspNode::getDistance(), getSide(), Ogre::OctreeCamera::getVisibility(), Ogre::intersect(), Ogre::PlaneBoundedVolume::intersects(), Ogre::Frustum::isVisible(), and Ogre::BspSceneManager::processVisibleLeaf(). |
|
Definition at line 65 of file OgrePlane.cpp. References getDistance(), and Ogre::Real. Referenced by Ogre::BspNode::getSide(), Ogre::PlaneBoundedVolume::intersects(), Ogre::Math::intersects(), and Ogre::Frustum::isVisible(). |
|
Comparison operator.
Definition at line 92 of file OgrePlane.h. |
|
Redefine this plane based on 3 points.
Definition at line 78 of file OgrePlane.cpp. References Ogre::Vector3::crossProduct(), d, Ogre::Vector3::dotProduct(), normal, and Ogre::Vector3::normalise(). Referenced by Ogre::TerrainRenderable::_calculateMinLevelDist2(), and Plane(). |
|
Definition at line 88 of file OgrePlane.cpp. |
|
|
Copyright © 2002-2003 by The OGRE Team
Last modified Sun Nov 28 19:51:25 2004