OGRE-Next
2.3
Object-Oriented Graphics Rendering Engine
|
#include <OgrePCPlane.h>
Public Types | |
enum | Side { NO_SIDE , POSITIVE_SIDE , NEGATIVE_SIDE , BOTH_SIDE } |
The "positive side" of the plane is the half space to which the plane normal points. More... | |
Public Member Functions | |
PCPlane () | |
Standard constructor. More... | |
PCPlane (const Plane &plane) | |
Alternative constructor. More... | |
PCPlane (const Vector3 &rkNormal, const Vector3 &rkPoint) | |
Alternative constructor. More... | |
PCPlane (const Vector3 &rkPoint0, const Vector3 &rkPoint1, const Vector3 &rkPoint2) | |
Alternative constructor. More... | |
~PCPlane () | |
Standard destructor. More... | |
Real | getDistance (const Vector3 &rkPoint) const |
This is a pseudodistance. More... | |
PortalBase * | getPortal () |
Returns the Portal that was used to create this plane. More... | |
Side | getSide (const AxisAlignedBox &rkBox) const |
Returns the side where the alignedBox is. More... | |
Side | getSide (const Vector3 ¢re, const Vector3 &halfSize) const |
Returns which side of the plane that the given box lies on. More... | |
Side | getSide (const Vector3 &rkPoint) const |
Real | normalise (void) |
Normalises the plane. More... | |
bool | operator!= (const Plane &rhs) const |
Plane | operator- () const |
Get flipped plane, with same location but reverted orientation. More... | |
bool | operator== (const Plane &rhs) const |
Comparison operator. More... | |
Vector3 | projectVector (const Vector3 &v) const |
Project a vector onto the plane. More... | |
void | redefine (const Vector3 &p0, const Vector3 &p1, const Vector3 &p2) |
Redefine this plane based on 3 points. More... | |
void | redefine (const Vector3 &rkNormal, const Vector3 &rkPoint) |
Redefine this plane based on a normal and a point. More... | |
void | setFromOgrePlane (Plane &ogrePlane) |
Copy from an Ogre Plane. More... | |
void | setPortal (PortalBase *o) |
Sets the Portal that was used to create this plane. More... | |
Public Attributes | |
Real | d |
Vector3 | normal |
|
inherited |
Ogre::PCPlane::PCPlane | ( | ) |
Standard constructor.
Ogre::PCPlane::PCPlane | ( | const Plane & | plane | ) |
Alternative constructor.
Alternative constructor.
Ogre::PCPlane::PCPlane | ( | const Vector3 & | rkPoint0, |
const Vector3 & | rkPoint1, | ||
const Vector3 & | rkPoint2 | ||
) |
Alternative constructor.
Ogre::PCPlane::~PCPlane | ( | ) |
Standard destructor.
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.
References Ogre::Vector3::dotProduct().
Referenced by Ogre::PlaneBoundedVolume::intersects().
|
inline |
Returns the Portal that was used to create this plane.
|
inherited |
Returns the side where the alignedBox is.
The flag BOTH_SIDE indicates an intersecting box. One corner ON the plane is sufficient to consider the box and the plane intersecting.
Returns which side of the plane that the given box lies on.
The box is defined as centre/half-size pairs for effectively.
centre | The centre of the box. |
halfSize | The half-size of the box. |
References Ogre::Plane::NEGATIVE_SIDE, Ogre::Plane::NO_SIDE, and Ogre::Plane::POSITIVE_SIDE.
Referenced by Ogre::PlaneBoundedVolume::intersects().
|
inherited |
Normalises the plane.
|
inlineinherited |
References Ogre::Plane::d, and Ogre::Plane::normal.
|
inlineinherited |
Get flipped plane, with same location but reverted orientation.
References Ogre::Vector3::x, Ogre::Vector3::y, and Ogre::Vector3::z.
|
inlineinherited |
Comparison operator.
References Ogre::Plane::d, and Ogre::Plane::normal.
Project a vector onto the plane.
v | The input vector |
|
inlineinherited |
Redefine this plane based on 3 points.
References Ogre::Vector3::dotProduct(), and Ogre::Vector3::normalisedCopy().
Redefine this plane based on a normal and a point.
References Ogre::Vector3::dotProduct().
|
inline |
Sets the Portal that was used to create this plane.
|
inherited |
Referenced by Ogre::Plane::operator!=(), Ogre::Matrix4::operator*(), and Ogre::Plane::operator==().
|
inherited |
Referenced by Ogre::Plane::operator!=(), Ogre::Matrix4::operator*(), and Ogre::Plane::operator==().