|
| plane3d (const vector3d< T > &MPoint, const vector3d< T > &Normal) |
|
| plane3d (T px, T py, T pz, T nx, T ny, T nz) |
|
| plane3d (const vector3d< T > &point1, const vector3d< T > &point2, const vector3d< T > &point3) |
|
| plane3d (const vector3d< T > &normal, const T d) |
|
bool | operator== (const plane3d< T > &other) const |
|
bool | operator!= (const plane3d< T > &other) const |
|
void | setPlane (const vector3d< T > &point, const vector3d< T > &nvector) |
|
void | setPlane (const vector3d< T > &nvect, T d) |
|
void | setPlane (const vector3d< T > &point1, const vector3d< T > &point2, const vector3d< T > &point3) |
|
bool | getIntersectionWithLine (const vector3d< T > &linePoint, const vector3d< T > &lineVect, vector3d< T > &outIntersection) const |
| Get an intersection with a 3d line.
|
|
f32 | getKnownIntersectionWithLine (const vector3d< T > &linePoint1, const vector3d< T > &linePoint2) const |
| Get percentage of line between two points where an intersection with this plane happens.
|
|
bool | getIntersectionWithLimitedLine (const vector3d< T > &linePoint1, const vector3d< T > &linePoint2, vector3d< T > &outIntersection) const |
| Get an intersection with a 3d line, limited between two 3d points.
|
|
EIntersectionRelation3D | classifyPointRelation (const vector3d< T > &point) const |
| Classifies the relation of a point to this plane.
|
|
void | recalculateD (const vector3d< T > &MPoint) |
| Recalculates the distance from origin by applying a new member point to the plane.
|
|
vector3d< T > | getMemberPoint () const |
| Gets a member point of the plane.
|
|
bool | existsIntersection (const plane3d< T > &other) const |
| Tests if there is an intersection with the other plane.
|
|
bool | getIntersectionWithPlane (const plane3d< T > &other, vector3d< T > &outLinePoint, vector3d< T > &outLineVect) const |
| Intersects this plane with another.
|
|
bool | getIntersectionWithPlanes (const plane3d< T > &o1, const plane3d< T > &o2, vector3d< T > &outPoint) const |
| Get the intersection point with two other planes if there is one.
|
|
bool | isFrontFacing (const vector3d< T > &lookDirection) const |
| Test if the triangle would be front or backfacing from any point.
|
|
T | getDistanceTo (const vector3d< T > &point) const |
| Get the distance to a point.
|
|
template<
class T>
class nirt::core::plane3d< T >
Template plane class with some intersection testing methods.
It has to be ensured, that the normal is always normalized. The constructors and setters of this class will not ensure this automatically. So any normal passed in has to be normalized in advance. No change to the normal will be made by any of the class methods.