|
Open CASCADE Technology
6.5.4
|
Generic 4-components vector. To be used as RGBA color vector or XYZW 3D-point with special W-component for operations with projection / model view matrices. Use this class for 3D-points carefully because declared W-component may results in incorrect results if used without matrices.
#include <NCollection_Vec4.hxx>
Public Member Functions | |
| NCollection_Vec4 () | |
| Empty constructor. Construct the zero vector. | |
| NCollection_Vec4 (const Element_t theValue) | |
| Initialize ALL components of vector within specified value. | |
| NCollection_Vec4 (const Element_t theX, const Element_t theY, const Element_t theZ, const Element_t theW) | |
| Per-component constructor. | |
| NCollection_Vec4 (const NCollection_Vec2< Element_t > &theVec2) | |
| Constructor from 2-components vector. | |
| NCollection_Vec4 (const NCollection_Vec3< Element_t > &theVec3) | |
| Constructor from 3-components vector. | |
| NCollection_Vec4 (const NCollection_Vec3< Element_t > &theVec3, const Element_t theAlpha) | |
| Constructor from 3-components vector + alpha value. | |
| NCollection_Vec4 (const NCollection_Vec4 &theVec4) | |
| Copy constructor. | |
| const NCollection_Vec4 & | operator= (const NCollection_Vec4 &theVec4) |
| Assignment operator. | |
| Element_t | x () const |
| Alias to 1st component as X coordinate in XYZW. | |
| Element_t | r () const |
| Alias to 1st component as RED channel in RGBA. | |
| Element_t | y () const |
| Alias to 2nd component as Y coordinate in XYZW. | |
| Element_t | g () const |
| Alias to 2nd component as GREEN channel in RGBA. | |
| Element_t | z () const |
| Alias to 3rd component as Z coordinate in XYZW. | |
| Element_t | b () const |
| Alias to 3rd component as BLUE channel in RGBA. | |
| Element_t | w () const |
| Alias to 4th component as W coordinate in XYZW. | |
| Element_t | a () const |
| Alias to 4th component as ALPHA channel in RGBA. | |
| NCOLLECTION_VEC_COMPONENTS_2D (x, y) | |
| NCOLLECTION_VEC_COMPONENTS_2D (x, z) | |
| NCOLLECTION_VEC_COMPONENTS_2D (x, w) | |
| NCOLLECTION_VEC_COMPONENTS_2D (y, z) | |
| NCOLLECTION_VEC_COMPONENTS_2D (y, w) | |
| NCOLLECTION_VEC_COMPONENTS_2D (z, w) | |
| NCOLLECTION_VEC_COMPONENTS_3D (x, y, z) | |
| NCOLLECTION_VEC_COMPONENTS_3D (x, y, w) | |
| NCOLLECTION_VEC_COMPONENTS_3D (x, z, w) | |
| NCOLLECTION_VEC_COMPONENTS_3D (y, z, w) | |
| NCOLLECTION_VEC_COMPONENTS_3D (r, g, b) | |
| Element_t & | x () |
| Alias to 1st component as X coordinate in XYZW. | |
| Element_t & | r () |
| Alias to 1st component as RED channel in RGBA. | |
| Element_t & | y () |
| Alias to 2nd component as Y coordinate in XYZW. | |
| Element_t & | g () |
| Alias to 2nd component as GREEN channel in RGBA. | |
| Element_t & | z () |
| Alias to 3rd component as Z coordinate in XYZW. | |
| Element_t & | b () |
| Alias to 3rd component as BLUE channel in RGBA. | |
| Element_t & | w () |
| Alias to 4th component as W coordinate in XYZW. | |
| Element_t & | a () |
| Alias to 4th component as ALPHA channel in RGBA. | |
| NCollection_Vec2< Element_t > & | xy () |
| NCollection_Vec2< Element_t > & | yz () |
| NCollection_Vec2< Element_t > & | zw () |
| NCollection_Vec3< Element_t > & | xyz () |
| NCollection_Vec3< Element_t > & | yzw () |
| const Element_t * | GetData () const |
| Raw access to the data (for OpenGL exchange). | |
| operator const Element_t * () const | |
| operator Element_t * () | |
| NCollection_Vec4 & | operator+= (const NCollection_Vec4 &theAdd) |
| Compute per-component summary. | |
| NCollection_Vec4 & | operator-= (const NCollection_Vec4 &theDec) |
| Compute per-component subtraction. | |
| NCollection_Vec4 & | operator*= (const NCollection_Vec4 &theRight) |
| Compute per-component multiplication. | |
| void | Multiply (const Element_t theFactor) |
| Compute per-component multiplication. | |
| NCollection_Vec4 & | operator*= (const Element_t theFactor) |
| Compute per-component multiplication. | |
| NCollection_Vec4 | operator* (const Element_t theFactor) const |
| Compute per-component multiplication. | |
| NCollection_Vec4 | Multiplied (const Element_t theFactor) const |
| Compute per-component multiplication. | |
| NCollection_Vec4 & | operator/= (const Element_t theInvFactor) |
| Compute per-component division by scale factor. | |
| NCollection_Vec4 | operator/ (const Element_t theInvFactor) |
| Compute per-component division by scale factor. | |
| template<> | |
| NCollection_Vec4< float > & | operator/= (const float theInvFactor) |
| template<> | |
| NCollection_Vec4< double > & | operator/= (const double theInvFactor) |
Static Public Member Functions | |
| static size_t | Length () |
| Returns the number of components. | |
Friends | |
| NCollection_Vec4 | operator+ (const NCollection_Vec4 &theLeft, const NCollection_Vec4 &theRight) |
| Compute per-component summary. | |
| NCollection_Vec4 | operator- (const NCollection_Vec4 &theLeft, const NCollection_Vec4 &theRight) |
| Compute per-component subtraction. | |
| NCollection_Vec4 | operator* (const NCollection_Vec4 &theLeft, const NCollection_Vec4 &theRight) |
| Compute per-component multiplication. | |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | ) | [inline] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const Element_t | theValue | ) | [inline, explicit] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const Element_t | theX, |
| const Element_t | theY, | ||
| const Element_t | theZ, | ||
| const Element_t | theW | ||
| ) | [inline, explicit] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const NCollection_Vec2< Element_t > & | theVec2 | ) | [inline, explicit] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const NCollection_Vec3< Element_t > & | theVec3 | ) | [inline, explicit] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const NCollection_Vec3< Element_t > & | theVec3, |
| const Element_t | theAlpha | ||
| ) | [inline, explicit] |
| NCollection_Vec4< Element_t >::NCollection_Vec4 | ( | const NCollection_Vec4< Element_t > & | theVec4 | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::a | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::a | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::b | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::b | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::g | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::g | ( | ) | [inline] |
| const Element_t* NCollection_Vec4< Element_t >::GetData | ( | ) | const [inline] |
| static size_t NCollection_Vec4< Element_t >::Length | ( | void | ) | [inline, static] |
| NCollection_Vec4 NCollection_Vec4< Element_t >::Multiplied | ( | const Element_t | theFactor | ) | const [inline] |
| void NCollection_Vec4< Element_t >::Multiply | ( | const Element_t | theFactor | ) | [inline] |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | x | , |
| y | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | x | , |
| z | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | x | , |
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | y | , |
| z | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | y | , |
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_2D | ( | z | , |
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_3D | ( | x | , |
| y | , | ||
| z | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_3D | ( | x | , |
| y | , | ||
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_3D | ( | x | , |
| z | , | ||
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_3D | ( | y | , |
| z | , | ||
| w | |||
| ) |
| NCollection_Vec4< Element_t >::NCOLLECTION_VEC_COMPONENTS_3D | ( | r | , |
| g | , | ||
| b | |||
| ) |
| NCollection_Vec4< Element_t >::operator const Element_t * | ( | ) | const [inline] |
| NCollection_Vec4< Element_t >::operator Element_t * | ( | ) | [inline] |
| NCollection_Vec4 NCollection_Vec4< Element_t >::operator* | ( | const Element_t | theFactor | ) | const [inline] |
| NCollection_Vec4& NCollection_Vec4< Element_t >::operator*= | ( | const NCollection_Vec4< Element_t > & | theRight | ) | [inline] |
| NCollection_Vec4& NCollection_Vec4< Element_t >::operator*= | ( | const Element_t | theFactor | ) | [inline] |
| NCollection_Vec4& NCollection_Vec4< Element_t >::operator+= | ( | const NCollection_Vec4< Element_t > & | theAdd | ) | [inline] |
| NCollection_Vec4& NCollection_Vec4< Element_t >::operator-= | ( | const NCollection_Vec4< Element_t > & | theDec | ) | [inline] |
| NCollection_Vec4 NCollection_Vec4< Element_t >::operator/ | ( | const Element_t | theInvFactor | ) | [inline] |
| NCollection_Vec4& NCollection_Vec4< Element_t >::operator/= | ( | const Element_t | theInvFactor | ) | [inline] |
| NCollection_Vec4< float > & NCollection_Vec4< float >::operator/= | ( | const float | theInvFactor | ) | [inline] |
| NCollection_Vec4< double > & NCollection_Vec4< double >::operator/= | ( | const double | theInvFactor | ) | [inline] |
| const NCollection_Vec4& NCollection_Vec4< Element_t >::operator= | ( | const NCollection_Vec4< Element_t > & | theVec4 | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::r | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::r | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::w | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::w | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::x | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::x | ( | ) | [inline] |
| NCollection_Vec2<Element_t>& NCollection_Vec4< Element_t >::xy | ( | ) | [inline] |
| NCollection_Vec3<Element_t>& NCollection_Vec4< Element_t >::xyz | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::y | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::y | ( | ) | [inline] |
| NCollection_Vec2<Element_t>& NCollection_Vec4< Element_t >::yz | ( | ) | [inline] |
| NCollection_Vec3<Element_t>& NCollection_Vec4< Element_t >::yzw | ( | ) | [inline] |
| Element_t NCollection_Vec4< Element_t >::z | ( | ) | const [inline] |
| Element_t& NCollection_Vec4< Element_t >::z | ( | ) | [inline] |
| NCollection_Vec2<Element_t>& NCollection_Vec4< Element_t >::zw | ( | ) | [inline] |
| NCollection_Vec4 operator* | ( | const NCollection_Vec4< Element_t > & | theLeft, |
| const NCollection_Vec4< Element_t > & | theRight | ||
| ) | [friend] |
| NCollection_Vec4 operator+ | ( | const NCollection_Vec4< Element_t > & | theLeft, |
| const NCollection_Vec4< Element_t > & | theRight | ||
| ) | [friend] |
| NCollection_Vec4 operator- | ( | const NCollection_Vec4< Element_t > & | theLeft, |
| const NCollection_Vec4< Element_t > & | theRight | ||
| ) | [friend] |
1.8.0