#include <vhdPlane.h>
Public Types | |
enum | Side { NO_SIDE, POSITIVE_SIDE, NEGATIVE_SIDE } |
Public Member Functions | |
vhdPlane () | |
vhdPlane (const vhdPlane &rhs) | |
vhdPlane (const vhdVector3 &rkNormal, vhtReal fConstant) | |
vhdPlane (const vhdVector3 &rkNormal, const vhdVector3 &rkPoint) | |
vhdPlane (const vhdVector3 &rkPoint0, const vhdVector3 &rkPoint1, const vhdVector3 &rkPoint2) | |
bool | operator== (const vhdPlane &p) const |
bool | operator!= (const vhdPlane &p) const |
Side | getSide (const vhdVector3 &rkPoint) const |
vhtReal | getDistance (const vhdVector3 &rkPoint) const |
void | setPlane (const vhdVector3 &normal, vhtReal d) |
void | setPlane (vhtReal a, vhtReal b, vhtReal c, vhtReal d) |
void | setPlane (const vhdVector3 &normal, const vhdVector3 &point) |
void | setPlane (const vhdVector3 &point1, const vhdVector3 &point2, const vhdVector3 &point3) |
Side | GetSide (const vhdVector3 &point) const |
bool | isParallelTo (const vhdPlane &plane) const |
Public Attributes | |
vhdVector3 | normal |
vhtReal | d |
Private Member Functions | |
void | normalize () |
Friends | |
std::ostream & | operator<< (std::ostream &o, vhdPlane &p) |
enum vhdPlane::Side |
vhdPlane::vhdPlane | ( | ) |
vhdPlane::vhdPlane | ( | const vhdPlane & | rhs | ) |
vhdPlane::vhdPlane | ( | const vhdVector3 & | rkNormal, | |
vhtReal | fConstant | |||
) |
vhdPlane::vhdPlane | ( | const vhdVector3 & | rkNormal, | |
const vhdVector3 & | rkPoint | |||
) |
vhdPlane::vhdPlane | ( | const vhdVector3 & | rkPoint0, | |
const vhdVector3 & | rkPoint1, | |||
const vhdVector3 & | rkPoint2 | |||
) |
bool vhdPlane::operator== | ( | const vhdPlane & | p | ) | const |
Equality operator.
bool vhdPlane::operator!= | ( | const vhdPlane & | p | ) | const |
Inequality operator.
vhdPlane::Side vhdPlane::getSide | ( | const vhdVector3 & | rkPoint | ) | const |
vhtReal vhdPlane::getDistance | ( | const vhdVector3 & | rkPoint | ) | const |
void vhdPlane::setPlane | ( | const vhdVector3 & | normal, | |
vhtReal | d | |||
) |
Sets this plane object to represent a new plane specified by a normal and a constant.
Sets this plane object to a plane specified by four constants as A*x + B*y + C*z + D = 0.
void vhdPlane::setPlane | ( | const vhdVector3 & | normal, | |
const vhdVector3 & | point | |||
) |
Sets this plane object to a plane specified by a normal and a point on the plane.
void vhdPlane::setPlane | ( | const vhdVector3 & | point1, | |
const vhdVector3 & | point2, | |||
const vhdVector3 & | point3 | |||
) |
Sets this plane object to a plane specified by three points.
Side vhdPlane::GetSide | ( | const vhdVector3 & | point | ) | const |
bool vhdPlane::isParallelTo | ( | const vhdPlane & | plane | ) | const |
Returns true if this plane is parallel to the given plane. The two planes are parallel, if n1 x n2 = 0 or abs(n1 * n2) = 1.
void vhdPlane::normalize | ( | ) | [inline, private] |
std::ostream& operator<< | ( | std::ostream & | o, | |
vhdPlane & | p | |||
) | [friend] |