| Home | Namespaces | Hierarchy | Alphabetical List | Class list | Files | Namespace Members | Class members | File members | Tutorials |
3D line between two points with intersection methods. More...
#include <line3d.h>
Public Member Functions | |
| vector3d< T > | getClosestPoint (const vector3d< T > &point) const |
| Get the closest point on this line to a point. | |
| bool | getIntersectionWithSphere (vector3d< T > sorigin, T sradius, f64 &outdistance) const |
| Check if the line intersects with a shpere. | |
| T | getLength () const |
| Get length of line. | |
| T | getLengthSQ () const |
| Get squared length of line. | |
| vector3d< T > | getMiddle () const |
| Get middle of line. | |
| vector3d< T > | getVector () const |
| Get vector of line. | |
| bool | isPointBetweenStartAndEnd (const vector3d< T > &point) const |
| Check if the given point is between start and end of the line. | |
| line3d (const vector3d< T > &start, const vector3d< T > &end) | |
| Constructor with two points as vectors. | |
| line3d (T xa, T ya, T za, T xb, T yb, T zb) | |
| Constructor with two points. | |
| line3d () | |
| Default constructor. | |
| bool | operator!= (const line3d< T > &other) const |
| line3d< T > | operator+ (const vector3d< T > &point) const |
| line3d< T > & | operator+= (const vector3d< T > &point) |
| line3d< T > | operator- (const vector3d< T > &point) const |
| line3d< T > & | operator-= (const vector3d< T > &point) |
| bool | operator== (const line3d< T > &other) const |
| void | setLine (const line3d< T > &line) |
| Set this line to new line given as parameter. | |
| void | setLine (const vector3d< T > &nstart, const vector3d< T > &nend) |
| Set this line to a new line going through the two points. | |
| void | setLine (const T &xa, const T &ya, const T &za, const T &xb, const T &yb, const T &zb) |
| Set this line to a new line going through the two points. | |
Public Attributes | |
| vector3d< T > | end |
| End point of line. | |
| vector3d< T > | start |
| Start point of line. | |
3D line between two points with intersection methods.
Definition at line 18 of file line3d.h.
| irr::core::line3d< T >::line3d | ( | ) | [inline] |
| irr::core::line3d< T >::line3d | ( | T | xa, | |
| T | ya, | |||
| T | za, | |||
| T | xb, | |||
| T | yb, | |||
| T | zb | |||
| ) | [inline] |
| irr::core::line3d< T >::line3d | ( | const vector3d< T > & | start, | |
| const vector3d< T > & | end | |||
| ) | [inline] |
| vector3d<T> irr::core::line3d< T >::getClosestPoint | ( | const vector3d< T > & | point | ) | const [inline] |
Get the closest point on this line to a point.
| point | The point to compare to. |
Definition at line 89 of file line3d.h.
References irr::core::vector3d< T >::dotProduct(), irr::core::line3d< T >::end, irr::core::vector3d< T >::getLength(), and irr::core::line3d< T >::start.
| bool irr::core::line3d< T >::getIntersectionWithSphere | ( | vector3d< T > | sorigin, | |
| T | sradius, | |||
| f64 & | outdistance | |||
| ) | const [inline] |
Check if the line intersects with a shpere.
| sorigin,: | Origin of the shpere. | |
| sradius,: | Radius of the sphere. | |
| outdistance,: | The distance to the first intersection point. |
Definition at line 113 of file line3d.h.
References irr::core::vector3d< T >::dotProduct(), irr::core::vector3d< T >::getLength(), irr::core::line3d< T >::getVector(), irr::core::squareroot(), and irr::core::line3d< T >::start.
| T irr::core::line3d< T >::getLength | ( | ) | const [inline] |
Get length of line.
Definition at line 56 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
Referenced by irr::core::aabbox3d< f32 >::intersectsWithLine().
| T irr::core::line3d< T >::getLengthSQ | ( | ) | const [inline] |
Get squared length of line.
Definition at line 60 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| vector3d<T> irr::core::line3d< T >::getMiddle | ( | ) | const [inline] |
Get middle of line.
Definition at line 64 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
Referenced by irr::core::aabbox3d< f32 >::intersectsWithLine().
| vector3d<T> irr::core::line3d< T >::getVector | ( | ) | const [inline] |
Get vector of line.
Definition at line 71 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
Referenced by irr::core::triangle3d< T >::getIntersectionWithLimitedLine(), irr::core::line3d< T >::getIntersectionWithSphere(), and irr::core::aabbox3d< f32 >::intersectsWithLine().
| bool irr::core::line3d< T >::isPointBetweenStartAndEnd | ( | const vector3d< T > & | point | ) | const [inline] |
Check if the given point is between start and end of the line.
Assumes that the point is already somewhere on the line.
| point | The point to test. |
Definition at line 81 of file line3d.h.
References irr::core::line3d< T >::end, irr::core::vector3d< T >::isBetweenPoints(), and irr::core::line3d< T >::start.
| bool irr::core::line3d< T >::operator!= | ( | const line3d< T > & | other | ) | const [inline] |
Definition at line 40 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| line3d<T> irr::core::line3d< T >::operator+ | ( | const vector3d< T > & | point | ) | const [inline] |
Definition at line 32 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| line3d<T>& irr::core::line3d< T >::operator+= | ( | const vector3d< T > & | point | ) | [inline] |
Definition at line 33 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| line3d<T> irr::core::line3d< T >::operator- | ( | const vector3d< T > & | point | ) | const [inline] |
Definition at line 35 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| line3d<T>& irr::core::line3d< T >::operator-= | ( | const vector3d< T > & | point | ) | [inline] |
Definition at line 36 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| bool irr::core::line3d< T >::operator== | ( | const line3d< T > & | other | ) | const [inline] |
Definition at line 38 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| void irr::core::line3d< T >::setLine | ( | const line3d< T > & | line | ) | [inline] |
Set this line to new line given as parameter.
Definition at line 51 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| void irr::core::line3d< T >::setLine | ( | const vector3d< T > & | nstart, | |
| const vector3d< T > & | nend | |||
| ) | [inline] |
Set this line to a new line going through the two points.
Definition at line 48 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| void irr::core::line3d< T >::setLine | ( | const T & | xa, | |
| const T & | ya, | |||
| const T & | za, | |||
| const T & | xb, | |||
| const T & | yb, | |||
| const T & | zb | |||
| ) | [inline] |
Set this line to a new line going through the two points.
Definition at line 45 of file line3d.h.
References irr::core::line3d< T >::end, and irr::core::line3d< T >::start.
| vector3d<T> irr::core::line3d< T >::end |
End point of line.
Definition at line 132 of file line3d.h.
Referenced by irr::scene::SViewFrustum::clipLine(), irr::core::line3d< T >::getClosestPoint(), irr::core::triangle3d< T >::getIntersectionWithLimitedLine(), irr::core::line3d< T >::getLength(), irr::core::line3d< T >::getLengthSQ(), irr::core::line3d< T >::getMiddle(), irr::core::line3d< T >::getVector(), irr::core::line3d< T >::isPointBetweenStartAndEnd(), irr::core::line3d< T >::operator!=(), irr::core::line3d< T >::operator+(), irr::core::line3d< T >::operator+=(), irr::core::line3d< T >::operator-(), irr::core::line3d< T >::operator-=(), irr::core::line3d< T >::operator==(), and irr::core::line3d< T >::setLine().
| vector3d<T> irr::core::line3d< T >::start |
Start point of line.
Definition at line 130 of file line3d.h.
Referenced by irr::scene::SViewFrustum::clipLine(), irr::core::line3d< T >::getClosestPoint(), irr::core::triangle3d< T >::getIntersectionWithLimitedLine(), irr::core::line3d< T >::getIntersectionWithSphere(), irr::core::line3d< T >::getLength(), irr::core::line3d< T >::getLengthSQ(), irr::core::line3d< T >::getMiddle(), irr::core::line3d< T >::getVector(), irr::core::line3d< T >::isPointBetweenStartAndEnd(), irr::core::line3d< T >::operator!=(), irr::core::line3d< T >::operator+(), irr::core::line3d< T >::operator+=(), irr::core::line3d< T >::operator-(), irr::core::line3d< T >::operator-=(), irr::core::line3d< T >::operator==(), and irr::core::line3d< T >::setLine().
| The Irrlicht
Engine Documentation © 2003-2010 by Nikolaus Gebhardt. Generated
on Sun Feb 14 13:07:03 2010 by Doxygen
(1.6.2) |