#include <line3.h>
Public Types |
|
Enums
|
|
enum | Form { FORM__PARAMETER = 0, FORM__TWO_POINTS = 1 } |
form of parameter to describe the
line: 0 one Point and one Vector.
More... |
|
Public Member Functions |
|
Constructors and Destructors
|
|
TLine3 () | |
Default constructor. |
|
TLine3 (const TLine3 &line) | |
Copy constructor. |
|
TLine3 (const TVector3< T > &point, const TVector3< T > &vector, Form form=FORM__PARAMETER) | |
Detailed constructor. |
|
virtual | ~TLine3 () |
Destructor. |
|
virtual void | clear () |
Clear method. |
|
Assignment
|
|
void | swap (TLine3 &line) |
Swap the contents of two instances
of lines. |
|
void | set (const TLine3 &line) |
Assign from another instance of
TLine3.
|
|
void | set (const TVector3< T > &point, const TVector3< T > &vector, Form form=FORM__PARAMETER) |
Assign from one point and a vector
or from two points, depending on form. |
|
TLine3 & | operator= (const TLine3 &line) |
Assignment operator. |
|
void | get (TLine3 &line) const |
Assign to another instance of
TLine3.
|
|
void | get (TVector3< T > &point, TVector3< T > &vector, Form form=FORM__PARAMETER) const |
Assign to two instances of
TVector3 .
|
|
Accessors
|
|
void | normalize () |
Normalize the vector component.
|
|
Predicates
|
|
bool | operator== (const TLine3 &line) const |
Equality operator. |
|
bool | operator!= (const TLine3 &line) const |
Inequality operator. |
|
bool | has (const TVector3< T > &point) const |
Test whether a given point is a
member of the line. |
|
Debugging and Diagnostics
|
|
bool | isValid () const |
Test whether instance is valid.
|
|
void | dump (std::ostream &s=std::cout, Size depth=0) const |
Internal state dump. |
|
Public Attributes |
|
Attributes
|
|
TVector3< T > | p |
Point Component. |
|
TVector3< T > | d |
Vector Component. |
enum BALL::TLine3::Form |
form of parameter to describe the line: 0
one Point and one Vector.
1
two Points
BALL::TLine3< T >::TLine3 | ( | const TLine3< T > & | line | ) |
BALL::TLine3< T >::TLine3 | ( | const TVector3< T > & | point, | |
const TVector3< T > & | vector, | |||
Form | form =
FORM__PARAMETER |
|||
) |
Detailed constructor.
Depending on form, create a new TLine3 object from a point and a vector or from two points.
point | assigned to p |
|
vector | assigned to d |
|
form | assigns form of parameter 0 one
Point and one Vector |
1
two Pointsvirtual BALL::TLine3< T >::~TLine3 | ( | ) | [virtual] |
Destructor.
Destructs the TLine3 object. As there are no dynamic data structures, nothing happens.
virtual void BALL::TLine3< T >::clear | ( | ) | [virtual] |
void BALL::TLine3< T >::dump | ( | std::ostream & | s =
std::cout , |
|
Size | depth =
0 |
|||
) | const |
Internal state dump.
Dump the current internal state of {*this} to the output ostream s with dumping depth depth .
s | - output stream where to output the internal state of {*this} | |
depth | - the dumping depth |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
void BALL::TLine3< T >::get | ( | TVector3< T > & | point, | |
TVector3< T > & | vector, | |||
Form | form =
FORM__PARAMETER |
|||
) | const |
Assign to two instances of TVector3
.
Type of components depends on form.
point | the first point | |
vector | the second point or the vector component | |
form | assigns form of parameter |
0
one Point and one Vector1
two PointsReferences BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
void BALL::TLine3< T >::get | ( | TLine3< T > & | line | ) | const |
Assign to another instance of TLine3.
Assigns the vector components to another vector.
line | the line to be assigned to |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
bool BALL::TLine3< T >::has | ( | const TVector3< T > & | point | ) | const |
Test whether a given point is a member of the line.
References BALL::TLine3< T >::d, BALL::Maths::isEqual(), BALL::Maths::isNotZero(), BALL::TLine3< T >::p, BALL::TVector3< T >::x, BALL::TVector3< T >::y, and BALL::TVector3< T >::z.
bool BALL::TLine3< T >::isValid | ( | ) | const |
Test whether instance is valid.
Always returns true.
void BALL::TLine3< T >::normalize | ( | ) |
Normalize the vector component.
The vector is scaled with its length: .
DivisionByZero | if the length of the vector is 0 |
References BALL::TLine3< T >::d.
bool BALL::TLine3< T >::operator!= | ( | const TLine3< T > & | line | ) | const |
Inequality operator.
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
TLine3& BALL::TLine3< T >::operator= | ( | const TLine3< T > & | line | ) |
Assignment operator.
Assign the components from another instance of line.
line | the vector to assign from |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
bool BALL::TLine3< T >::operator== | ( | const TLine3< T > & | line | ) | const |
Equality operator.
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
void BALL::TLine3< T >::set | ( | const TVector3< T > & | point, | |
const TVector3< T > & | vector, | |||
Form | form =
FORM__PARAMETER |
|||
) |
Assign from one point and a vector or from two points, depending on form.
point | assigned to p |
|
vector | assigned to d |
|
form | assigns form of parameter |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
void BALL::TLine3< T >::set | ( | const TLine3< T > & | line | ) |
Assign from another instance of TLine3.
line | the TLine3 object to assign from |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.
void BALL::TLine3< T >::swap | ( | TLine3< T > & | line | ) |
Swap the contents of two instances of lines.
line | the TLine3 to swap contents with |
References BALL::TLine3< T >::d, and BALL::TLine3< T >::p.