Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

peon::Plane Class Reference

Defines a plane in 3D space. More...

#include <Plane.h>

List of all members.

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 Member Functions

 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

_PeonExport friend std::ostream & operator<< (std::ostream &o, Plane &p)


Detailed Description

Defines a plane in 3D space.

Remarks:
A plane is defined in 3D space by the equation Ax + By + Cz + D = 0
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.


Member Enumeration Documentation

enum peon::Plane::Side
 

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.


Member Function Documentation

Real peon::Plane::getDistance const Vector3 rkPoint  )  const
 

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.


The documentation for this class was generated from the following file:
Generated on Wed Nov 9 09:37:08 2005 for Peon by  doxygen 1.4.3