MeVisLab Toolbox Reference
|
A six dimensional vector class for floating point types. More...
#include <mlVector6.h>
Public Types | |
typedef FloatingPointVector< DT, 6 > | Superclass |
A typedef as a shorthand for the base class. | |
typedef DT | ComponentType |
A typedef to "export" the type of components. | |
Public Types inherited from ml::FloatingPointVector< DT, 6 > | |
enum | |
This enum grants access to the size during compile time, e.g. More... | |
typedef DT | ComponentType |
A typedef to "export" the type of components. | |
Public Member Functions | |
constructors | |
Tvec6 (const DT value=0) | |
Default and value constructor. | |
Tvec6 (const Superclass &v) | |
Copy constructor from FloatingPointVector. | |
Tvec6 (const DT x, const DT y, const DT z, const DT c, const DT t, const DT u) | |
Builds the vector from the scalars x, y, z, c, t and u to the components 0 to 5, respectively. | |
Tvec6 (const Tvec2< DT > &v, const DT z, const DT c, const DT t, const DT u) | |
Casts Tvec2 to Tvec6. Last components are set to z, c, t and u whose defaults are 0. | |
Tvec6 (const Tvec3< DT > &v, const DT c, const DT t, const DT u) | |
Casts Tvec3 to Tvec6. Last components are set to c, t and u whose defaults are 0. | |
Tvec6 (const Tvec4< DT > &v, const DT t, const DT u) | |
Casts Tvec4 to Tvec6. Last components are set to t and u whose defaults are 0. | |
Other operators and methods | |
void | assign (const DT x, const DT y, const DT z, const DT c, const DT t, const DT u) |
Sets all components to the passed values. | |
Tvec6< DT > & | operator+= (const Tvec2< DT > &v) |
Incrementation by a Tvec2. | |
Tvec6< DT > & | operator+= (const Tvec3< DT > &v) |
Incrementation by a Tvec3. | |
Tvec6< DT > & | operator+= (const Tvec4< DT > &v) |
Incrementation by a Tvec4. | |
const Tvec3< DT > | getVec3 () const |
Returns a Tvec3 from components 0,1, and 2. | |
const Tvec4< DT > | getVec4 () const |
Returns a Tvec4 from components 0, 1, 2, and 3. | |
Public Member Functions inherited from ml::FloatingPointVector< DT, 6 > | |
FloatingPointVector (DT value=DT(0)) | |
Default and value constructor. | |
FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > & | operator= (DT value) |
Assignment of scalar value to all components. | |
bool | operator== (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Returns whether *this and buffer are component wise equal. | |
bool | operator!= (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Returns whether any components of *this and buffer are not equal. | |
bool | operator< (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Defines an artificial order for use in sort algorithms (lexicographical order). | |
const DT & | operator[] (const size_t i) const |
Constant indexing operators. | |
DT & | operator[] (const size_t i) |
Indexing operators. | |
size_t | getSize () const |
Returns the number of elements of value buffer. | |
DT | norm2 () const |
Returns the Euclidean norm (the vector length), i.e., square root of sum of squares of all components. | |
DT | norm2 (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &weight) const |
Returns the weighted Euclidean norm, i.e., square root of sum of squares of all components multiplied with corresponding squared component of weight. | |
DT | dot (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Returns the dot product, i.e., sum of all components multiplied with corresponding components of buffer. | |
DT | normalize () |
Normalizes the buffer and returns the Euclidean length of vector before normalization, i.e., norm2. | |
DT | length () const |
Returns the length of the vector, i.e. norm2(). | |
DT | distance (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Returns the distance of this vector to a given one. | |
DT | distanceSquared (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &buffer) const |
Returns the squared distance of this vector to a given one. | |
DT | lengthSquared () const |
Returns the squared length of the vector. | |
DT | compSum () const |
Returns the sum of all components. | |
DT | compMul () const |
Returns the product of all vector components. | |
DT | compMaxAbs () const |
Returns the maximum of absolute component values. | |
void | compMin (FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > buffer) |
Sets the component wise minimum of *this and buffer in *this. | |
void | compMax (FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > buffer) |
Sets the component wise maximum of *this and buffer in *this. | |
void | compAbs () |
Kills negative signs from all components. | |
void | compDiv (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &d) |
Divides each vector component by the corresponding one of d. | |
void | compSqr () |
Calculates and sets the square of all components. | |
void | compSqrt () |
Calculates and sets square root of all components. | |
void | clampMin (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &lower) |
Calculates and sets all components clamped to lower, i.e., if any component is smaller than the corresponding one in lower then it is set to the one from lower. | |
void | clampMax (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &upper) |
Calculates and sets all components clamped to upper, i.e., if any component is greater than the corresponding one in upper then it is set to the one from upper. | |
void | clamp (const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &lower, const FloatingPointVector< DT, size, FloatingPointVectorDataContainerBase< DT, size > > &upper) |
Calculates and sets all components of *this so that they are between minimum min and maximum max. | |
void | compRound () |
Rounds all components of this vector using floor(component + 0.5). | |
void | compFloor () |
Rounds all components of this vector using floor(component). | |
void | compCeil () |
Rounds all components of this vector to integer using ceil(component). | |
FloatingPointVector< DT, 3, FloatingPointVectorDataContainerBase< DT, size > > | cross (const FloatingPointVector< DT, 3, FloatingPointVectorDataContainerBase< DT, size > > &b) const |
Returns the cross product for elements, i.e., return vector vertical to *this and b. | |
void | apply (ML_LA_FROM_DOUBLE_TO_DOUBLE f) |
Applies the function f to each component starting from index 0 to index size-1. | |
std::ostream & | writeOut (std::ostream &os) const |
Writes all components to ostream os starting from index 0 to size-1. | |
std::istream & | readIn (std::istream &is) |
Reads all components from istream is starting starting from index 0 to size-1. | |
A six dimensional vector class for floating point types.
A six dimensional vector class.
Definition at line 45 of file mlVector6.h.
A typedef to "export" the type of components.
Definition at line 53 of file mlVector6.h.
typedef FloatingPointVector<DT,6> ml::Tvec6< DT >::Superclass |
A typedef as a shorthand for the base class.
Definition at line 50 of file mlVector6.h.
Default and value constructor.
Sets all entries to a user given value. value is the init value for all entries. 0 is the default value.
Definition at line 61 of file mlVector6.h.
|
inline |
Copy constructor from FloatingPointVector.
This allows the usage of ScalarVectorTemplate objects of the same DT in operators using the Tvec6, because the FloatingPointVector objects can implicitly be cast.
Definition at line 68 of file mlVector6.h.
|
inline |
Builds the vector from the scalars x, y, z, c, t and u to the components 0 to 5, respectively.
Definition at line 74 of file mlVector6.h.
|
inline |
Casts Tvec2 to Tvec6. Last components are set to z, c, t and u whose defaults are 0.
Definition at line 85 of file mlVector6.h.
|
inline |
Casts Tvec3 to Tvec6. Last components are set to c, t and u whose defaults are 0.
Definition at line 96 of file mlVector6.h.
Casts Tvec4 to Tvec6. Last components are set to t and u whose defaults are 0.
Definition at line 107 of file mlVector6.h.
|
inline |
Sets all components to the passed values.
Definition at line 123 of file mlVector6.h.
Returns a Tvec3 from components 0,1, and 2.
Definition at line 161 of file mlVector6.h.
References mlrange_cast().
Returns a Tvec4 from components 0, 1, 2, and 3.
Definition at line 169 of file mlVector6.h.
References mlrange_cast().
Incrementation by a Tvec2.
Definition at line 134 of file mlVector6.h.
Incrementation by a Tvec3.
Definition at line 142 of file mlVector6.h.
Incrementation by a Tvec4.
Definition at line 151 of file mlVector6.h.