#include <CTB2vec.hxx>
Collaboration diagram for CTB2vec:

Public Methods | |
| CTB2vec () | |
| CTB2vec (T rhs) | |
| CTB2vec (T x, T y) | |
| CTB2vec (const CTB2vec< T > &rhs) | |
| T & | X () |
| const T & | X () const |
| T & | Y () |
| const T & | Y () const |
| void | X (T x) |
| void | Y (T y) |
| T | Length () const |
| T | Dot (const CTB2vec< T > &rhs) const |
| CTB2vec< T > | Project (const CTB2vec< T > &x, const CTB2vec< T > &y) const |
| CTB2vec< T > | UnProject (const CTB2vec< T > &x, const CTB2vec< T > &y) const |
| T & | operator[] (CTBint i_ind) |
| const T & | operator[] (CTBint i_ind) const |
| operator T * () | |
| operator const T * () const | |
| CTB2vec< T > | operator- () const |
| CTB2vec< T > & | operator+= (const CTB2vec< T > &rhs) |
| CTB2vec< T > & | operator-= (const CTB2vec< T > &rhs) |
| CTB2vec< T > & | operator *= (T rhs) |
| CTB2vec< T > & | operator/= (T rhs) |
| CTB2vec< T > & | operator= (T rhs) |
| CTB2vec< T > & | operator= (const CTB2vec< T > &rhs) |
Protected Attributes | |
| T | m_data [2] |
Related Functions | |
| (Note that these are not member functions.) | |
| CTB2vec< T > | operator+ (const CTB2vec< T > &lhs, const CTB2vec< T > &rhs) |
| CTB2vec< T > | operator+ (const CTB2vec< T > &lhs, T f_rhs) |
| CTB2vec< T > | operator+ (T f_lhs, const CTB2vec< T > &rhs) |
| CTB2vec< T > | operator- (const CTB2vec< T > &lhs, const CTB2vec< T > &rhs) |
| CTB2vec< T > | operator- (const CTB2vec< T > &lhs, T f_rhs) |
| CTB2vec< T > | operator- (T f_lhs, const CTB2vec< T > &rhs) |
| T | operator * (const CTB2vec< T > &lhs, const CTB2vec< T > &rhs) |
| CTB2vec< T > | operator * (const CTB2vec< T > &lhs, T f_rhs) |
| CTB2vec< T > | operator * (T f_lhs, const CTB2vec< T > &rhs) |
| CTB2vec< T > | operator/ (const CTB2vec< T > &lhs, T f_rhs) |
| bool | operator== (const CTB2vec< T > &lhs, const CTB2vec< T > &rhs) |
| bool | operator== (const CTB2vec< T > &lhs, T f_rhs) |
| bool | operator== (T f_lhs, const CTB2vec< T > &rhs) |
| ostream & | operator<< (ostream &os, const CTB2vec< T > &obj) |
| T | CTBabs (const CTB2vec< T > &vec) |
The template class CTB2vec represents a 2 component vector of type T. It is mainly intended for usage in 2d geometry, the components are thus called X and Y.
Note, that this class is intended to be used with arithmetic data types, like float or double. It is expected that the arithmetic operators are defined and that an object of type T can be initialized and assigned with a 0.
double, there is no performance penalty for passing arguments by value, but due to potentially better optimization, even a performance advantage.
Definition at line 17 of file CTB2vec.hxx.
|
|||||||||
|
Construct and set all components to 0.
Definition at line 58 of file CTB2vec.icc. |
|
||||||||||
|
Construct with scalar init, set all components to rhs.
Definition at line 68 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Construct from 2 values.
Definition at line 77 of file CTB2vec.icc. |
|
||||||||||
|
Copy constructor.
Definition at line 87 of file CTB2vec.icc. |
|
|||||||||
|
Access [0] or x component.
Definition at line 96 of file CTB2vec.icc. |
|
|||||||||
|
Constant access [0] or x component.
Definition at line 105 of file CTB2vec.icc. |
|
|||||||||
|
Access [1] or y component.
Definition at line 114 of file CTB2vec.icc. |
|
|||||||||
|
Constant access [1] or y component.
Definition at line 123 of file CTB2vec.icc. |
|
||||||||||
|
Set [0] or x component.
Definition at line 132 of file CTB2vec.icc. |
|
||||||||||
|
Set [1] or y component.
Definition at line 141 of file CTB2vec.icc. |
|
|||||||||
|
Returns length of vector.
Definition at line 151 of file CTB2vec.icc. Referenced by CTBabs().
|
|
||||||||||
|
Returns inner product with rhs.
Definition at line 160 of file CTB2vec.icc. Referenced by Project().
|
|
|||||||||||||||||||
|
Returns projection of vector onto vectors x and y.
Definition at line 170 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns vector with components [0] * x and [1] * y.
Definition at line 180 of file CTB2vec.icc. |
|
||||||||||
|
Access element.
Definition at line 191 of file CTB2vec.icc. |
|
||||||||||
|
Constant access element.
Definition at line 200 of file CTB2vec.icc. |
|
|||||||||
|
Convert to pointer.
Definition at line 209 of file CTB2vec.icc. |
|
|||||||||
|
Constant convert to pointer.
Definition at line 218 of file CTB2vec.icc. |
|
|||||||||
|
Returns negative of vector.
Definition at line 227 of file CTB2vec.icc. |
|
||||||||||
|
Add vector rhs.
Definition at line 236 of file CTB2vec.icc. |
|
||||||||||
|
Subtract vector rhs.
Definition at line 247 of file CTB2vec.icc. |
|
||||||||||
|
Multiply each component by the scalar value rhs.
Definition at line 258 of file CTB2vec.icc. |
|
||||||||||
|
Divide each component by the scalar value rhs.
Definition at line 269 of file CTB2vec.icc. |
|
||||||||||
|
Set all components to the scalar value rhs.
Definition at line 281 of file CTB2vec.icc. Referenced by CTB2vec().
|
|
||||||||||
|
Copy values of vector rhs.
Definition at line 292 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns sum of two vectors lhs and rhs .
Definition at line 306 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns sum of vectors lhs and scalar f_rhs .
Definition at line 318 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns sum of scaler f_lhs and vector rhs .
Definition at line 330 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns difference of two vectors lhs and rhs .
Definition at line 342 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns difference of vectors lhs and scalar f_rhs .
Definition at line 354 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns difference of scaler f_lhs and vector rhs .
Definition at line 366 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns scalar product of two vectors lhs and rhs .
Definition at line 378 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns vector lhs and multiplyied by scalar f_rhs .
Definition at line 390 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns vector rhs and multiplyied by scalar f_lhs .
Definition at line 402 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns vector lhs and divided by scalar f_rhs .
Definition at line 414 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Returns
Definition at line 426 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Definition at line 438 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
Definition at line 450 of file CTB2vec.icc. |
|
|||||||||||||||||||
|
ostream insertion.
Definition at line 462 of file CTB2vec.icc. |
|
||||||||||
|
Returns length of vector vec .
Definition at line 478 of file CTB2vec.icc. |
|
|||||
|
data vector.
Definition at line 60 of file CTB2vec.hxx. |
1.2.9-20010812 written by Dimitri van Heesch,
© 1997-2001