Public Member Functions |
| | LPlaned () |
| | Creates a default plane.
|
|
| LPlaned (const LVecBase4d ©) |
| | LPlaned (const LVector3d &normal, const LPoint3d &point) |
| | Constructs a plane given a surface normal vector and a point within the plane.
|
| | LPlaned (double a, double b, double c, double d) |
| | Constructs a plane given the four terms of the plane equation.
|
| | LPlaned (const LPoint3d &a, const LPoint3d &b, const LPoint3d &c) |
| | Constructs a plane given three counter-clockwise points, as seen from the front of the plane (that is, viewed from the end of the normal vector, looking down).
|
|
| LPlaned (const LVecBase4d ©) |
|
| LPlaned (const LPoint3d &a, const LPoint3d &b, const LPoint3d &c) |
|
| LPlaned (const LVector3d &normal, const LPoint3d &point) |
|
| LPlaned (double a, double b, double c, double d) |
|
double | dist_to_plane (const LPoint3d &point) const |
| double | dist_to_plane (const LPoint3d &point) const |
| | Returns the straight-line shortest distance from the point to the plane.
|
| void | flip () |
| | Convenience method that flips the plane in-place.
|
|
void | flip () |
|
LVector3d | get_normal () const |
| LVector3d | get_normal () const |
| | Returns the surface normal of the plane.
|
|
LPoint3d | get_point () const |
| LPoint3d | get_point () const |
| | Returns an arbitrary point in the plane.
|
|
LMatrix4d | get_reflection_mat () const |
| LMatrix4d | get_reflection_mat () const |
| | This computes a transform matrix that reflects the universe to the other side of the plane, as in a mirror.
|
| bool | intersects_line (double &t, const LPoint3d &from, const LVector3d &delta) const |
| | This flavor of intersects_line() returns a bit more information about the nature of the intersecting point.
|
|
bool | intersects_line (LPoint3d &intersection_point, const LPoint3d &p1, const LPoint3d &p2) const |
|
bool | intersects_line (double &t, const LPoint3d &from, const LVector3d &delta) const |
| bool | intersects_line (LPoint3d &intersection_point, const LPoint3d &p1, const LPoint3d &p2) const |
| | Returns true if the plane intersects the infinite line passing through points p1 and p2, false if the line is parallel.
|
| bool | intersects_parabola (double &t1, double &t2, const LParabolad ¶bola) const |
| | Determines whether and where the indicated parabola intersects with the plane.
|
|
bool | intersects_parabola (double &t1, double &t2, const LParabolad ¶bola) const |
|
bool | intersects_plane (LPoint3d &from, LVector3d &delta, const LPlaned &other) const |
| bool | intersects_plane (LPoint3d &from, LVector3d &delta, const LPlaned &other) const |
| | Returns true if the two planes intersect, false if they do not.
|
|
LPlaned | operator* (const LMatrix4d &mat) const |
| LPlaned | operator* (const LMatrix3d &mat) const |
| | Transforms the plane by the indicated matrix.
|
| LPlaned | operator* (const LMatrix4d &mat) const |
| | Transforms the plane by the indicated matrix.
|
|
LPlaned | operator* (const LMatrix3d &mat) const |
| void | operator*= (const LMatrix4d &mat) |
| | Transforms the plane by the indicated matrix.
|
|
void | operator*= (const LMatrix4d &mat) |
|
LPlaned | operator- () const |
| LPlaned | operator- () const |
| | Returns the same plane facing the opposite direction.
|
|
void | output (ostream &out) const |
|
void | output (ostream &out) const |
|
LPoint3d | project (const LPoint3d &point) const |
| LPoint3d | project (const LPoint3d &point) const |
| | Returns the point within the plane nearest to the indicated point in space.
|
|
void | write (ostream &out, int indent_level=0) const |
|
void | write (ostream &out, int indent_level=0) const |
|
void | xform (const LMatrix4d &mat) |
| void | xform (const LMatrix4d &mat) |
| | Transforms the plane by the indicated matrix.
|
An abstract mathematical description of a plane.
A plane is defined by the equation Ax + By + Cz + D = 0.
Definition at line 49 of file plane.h.