| 
    HDK
    
   | 
 
#include <ImathVec.h>
Public Types | |
| typedef T | BaseType | 
Public Member Functions | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 T &  | operator[] (int i) IMATH_NOEXCEPT | 
| Element access by index.  More... | |
| IMATH_HOSTDEVICE constexpr  const T &  | operator[] (int i) const IMATH_NOEXCEPT | 
| Element access by index.  More... | |
Constructors and Assignment  | |
| IMATH_HOSTDEVICE | Vec4 () IMATH_NOEXCEPT | 
| Uninitialized by default.  More... | |
| IMATH_HOSTDEVICE constexpr | Vec4 (T a) IMATH_NOEXCEPT | 
Initialize to a scalar (a,a,a,a)  More... | |
| IMATH_HOSTDEVICE constexpr | Vec4 (T a, T b, T c, T d) IMATH_NOEXCEPT | 
Initialize to given elements (a,b,c,d)  More... | |
| IMATH_HOSTDEVICE constexpr | Vec4 (const Vec4 &v) IMATH_NOEXCEPT | 
| Copy constructor.  More... | |
| template<class S > | |
| IMATH_HOSTDEVICE constexpr | Vec4 (const Vec4< S > &v) IMATH_NOEXCEPT | 
| Construct from Vec4 of another base type.  More... | |
| template<class S > | |
| IMATH_HOSTDEVICE constexpr | Vec4 (const Vec3< S > &v) IMATH_NOEXCEPT | 
| Vec3 to Vec4 conversion, sets w to 1.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator= (const Vec4 &v) IMATH_NOEXCEPT | 
| Assignment.  More... | |
| ~Vec4 () IMATH_NOEXCEPT=default | |
| Destructor.  More... | |
Interoperability with other vector types  | |
| template<typename V , IMATH_ENABLE_IF(has_xyzw< V, T >::value) > | |
| IMATH_HOSTDEVICE constexpr | Vec4 (const V &v) IMATH_NOEXCEPT | 
| template<typename V , IMATH_ENABLE_IF(has_subscript< V, T, 4 >::value &&!has_xyzw< V, T >::value) > | |
| IMATH_HOSTDEVICE | Vec4 (const V &v) | 
| template<typename V , IMATH_ENABLE_IF(has_xyzw< V, T >::value) > | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator= (const V &v) IMATH_NOEXCEPT | 
| template<typename V , IMATH_ENABLE_IF(has_subscript< V, T, 4 >::value &&!has_xyzw< V, T >::value) > | |
| IMATH_HOSTDEVICE const Vec4 & | operator= (const V &v) | 
Arithmetic and Comparison  | |
| template<class S > | |
| IMATH_HOSTDEVICE constexpr bool | operator== (const Vec4< S > &v) const IMATH_NOEXCEPT | 
| Equality.  More... | |
| template<class S > | |
| IMATH_HOSTDEVICE constexpr bool | operator!= (const Vec4< S > &v) const IMATH_NOEXCEPT | 
| Inequality.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 bool  | equalWithAbsError (const Vec4< T > &v, T e) const IMATH_NOEXCEPT | 
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 bool  | equalWithRelError (const Vec4< T > &v, T e) const IMATH_NOEXCEPT | 
| IMATH_HOSTDEVICE constexpr T | dot (const Vec4 &v) const IMATH_NOEXCEPT | 
| Dot product.  More... | |
| IMATH_HOSTDEVICE constexpr T | operator^ (const Vec4 &v) const IMATH_NOEXCEPT | 
| Dot product.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator+= (const Vec4 &v) IMATH_NOEXCEPT | 
| Component-wise addition.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator+ (const Vec4 &v) const IMATH_NOEXCEPT | 
| Component-wise addition.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator-= (const Vec4 &v) IMATH_NOEXCEPT | 
| Component-wise subtraction.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator- (const Vec4 &v) const IMATH_NOEXCEPT | 
| Component-wise subtraction.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator- () const IMATH_NOEXCEPT | 
| Component-wise multiplication by -1.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | negate () IMATH_NOEXCEPT | 
| Component-wise multiplication by -1.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator*= (const Vec4 &v) IMATH_NOEXCEPT | 
| Component-wise multiplication.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator*= (T a) IMATH_NOEXCEPT | 
| Component-wise multiplication.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator* (const Vec4 &v) const IMATH_NOEXCEPT | 
| Component-wise multiplication.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator* (T a) const IMATH_NOEXCEPT | 
| Component-wise multiplication.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator/= (const Vec4 &v) IMATH_NOEXCEPT | 
| Component-wise division.  More... | |
| IMATH_HOSTDEVICE  IMATH_CONSTEXPR14 const Vec4 &  | operator/= (T a) IMATH_NOEXCEPT | 
| Component-wise division.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator/ (const Vec4 &v) const IMATH_NOEXCEPT | 
| Component-wise division.  More... | |
| IMATH_HOSTDEVICE constexpr Vec4 | operator/ (T a) const IMATH_NOEXCEPT | 
| Component-wise division.  More... | |
Query and Manipulation  | |
| IMATH_HOSTDEVICE T | length () const IMATH_NOEXCEPT | 
| Return the Euclidean norm.  More... | |
| IMATH_HOSTDEVICE constexpr T | length2 () const IMATH_NOEXCEPT | 
| IMATH_HOSTDEVICE const Vec4 & | normalize () IMATH_NOEXCEPT | 
| Normalize in place. If length()==0, return a null vector.  More... | |
| const Vec4 & | normalizeExc () | 
| Normalize in place. If length()==0, throw an exception.  More... | |
| IMATH_HOSTDEVICE const Vec4 & | normalizeNonNull () IMATH_NOEXCEPT | 
| IMATH_HOSTDEVICE Vec4< T > | normalized () const IMATH_NOEXCEPT | 
| Return a normalized vector. Does not modify *this.  More... | |
| Vec4< T > | normalizedExc () const | 
| IMATH_HOSTDEVICE Vec4< T > | normalizedNonNull () const IMATH_NOEXCEPT | 
Static Public Member Functions | |
| IMATH_HOSTDEVICE static  constexpr unsigned int  | dimensions () IMATH_NOEXCEPT | 
| Return the number of dimensions, i.e. 4.  More... | |
Numeric Limits  | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeLowest () IMATH_NOEXCEPT | 
| Largest possible negative value.  More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeMax () IMATH_NOEXCEPT | 
| Largest possible positive value.  More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeSmallest () IMATH_NOEXCEPT | 
| Smallest possible positive value.  More... | |
| IMATH_HOSTDEVICE static constexpr T | baseTypeEpsilon () IMATH_NOEXCEPT | 
| Smallest possible e for which 1+e != 1.  More... | |
Public Attributes | |
Direct access to elements  | |
| T | x | 
| T | y | 
| T | z | 
| T | w | 
The base type: In templates that accept a parameter V, you can refer to T as V::BaseType 
Definition at line 796 of file ImathVec.h.
      
  | 
  inline | 
Uninitialized by default.
Definition at line 1850 of file ImathVec.h.
      
  | 
  inlineexplicit | 
Initialize to a scalar (a,a,a,a) 
Definition at line 1855 of file ImathVec.h.
Initialize to given elements (a,b,c,d) 
Definition at line 1860 of file ImathVec.h.
Copy constructor.
Definition at line 1865 of file ImathVec.h.
      
  | 
  inline | 
Construct from Vec4 of another base type.
Definition at line 1871 of file ImathVec.h.
      
  | 
  inlineexplicit | 
Vec3 to Vec4 conversion, sets w to 1.
Definition at line 1888 of file ImathVec.h.
      
  | 
  inlineexplicit | 
Definition at line 637 of file ImathVec.h.
      
  | 
  inlineexplicit | 
Definition at line 642 of file ImathVec.h.
      
  | 
  inlinestatic | 
Smallest possible e for which 1+e != 1.
Definition at line 787 of file ImathVec.h.
      
  | 
  inlinestatic | 
Largest possible negative value.
Definition at line 778 of file ImathVec.h.
      
  | 
  inlinestatic | 
Largest possible positive value.
Definition at line 781 of file ImathVec.h.
      
  | 
  inlinestatic | 
Smallest possible positive value.
Definition at line 784 of file ImathVec.h.
      
  | 
  inlinestatic | 
Return the number of dimensions, i.e. 4.
Definition at line 792 of file ImathVec.h.
Dot product.
Definition at line 1933 of file ImathVec.h.
      
  | 
  inline | 
Compare two matrices and test if they are "approximately equal":
m are the same with an absolute error of no more than e, i.e., for all i, j: abs (this[i][j] - m[i][j]) <= e
Definition at line 1911 of file ImathVec.h.
      
  | 
  inline | 
Compare two matrices and test if they are "approximately equal":
abs (this[i] - v[i][j]) <= e * abs (this[i][j])
Definition at line 1922 of file ImathVec.h.
Return the Euclidean norm.
Definition at line 2110 of file ImathVec.h.
      
  | 
  inline | 
Return the square of the Euclidean norm, i.e. the dot product with itself.
Definition at line 2122 of file ImathVec.h.
      
  | 
  inline | 
Component-wise multiplication by -1.
Definition at line 1990 of file ImathVec.h.
      
  | 
  inline | 
Normalize in place. If length()==0, return a null vector.
Definition at line 2129 of file ImathVec.h.
      
  | 
  inline | 
Return a normalized vector. Does not modify *this.
Definition at line 2180 of file ImathVec.h.
Return a normalized vector. Does not modify *this. Throw an exception if length()==0.
Definition at line 2192 of file ImathVec.h.
      
  | 
  inline | 
Return a normalized vector. Does not modify *this, and does not check for length()==0. Slightly faster than the other normalization routines, but if v.length() is 0.0, the result is undefined.
Definition at line 2204 of file ImathVec.h.
Normalize in place. If length()==0, throw an exception.
Definition at line 2152 of file ImathVec.h.
      
  | 
  inline | 
Normalize without any checks for length()==0. Slightly faster than the other normalization routines, but if v.length() is 0.0, the result is undefined.
Definition at line 2168 of file ImathVec.h.
      
  | 
  inline | 
Inequality.
Definition at line 1904 of file ImathVec.h.
      
  | 
  inline | 
Component-wise multiplication.
Definition at line 2023 of file ImathVec.h.
Component-wise multiplication.
Definition at line 2030 of file ImathVec.h.
      
  | 
  inline | 
Component-wise multiplication.
Definition at line 2001 of file ImathVec.h.
      
  | 
  inline | 
Component-wise multiplication.
Definition at line 2012 of file ImathVec.h.
      
  | 
  inline | 
Component-wise addition.
Definition at line 1958 of file ImathVec.h.
      
  | 
  inline | 
Component-wise addition.
Definition at line 1947 of file ImathVec.h.
      
  | 
  inline | 
Component-wise subtraction.
Definition at line 1976 of file ImathVec.h.
      
  | 
  inline | 
Component-wise multiplication by -1.
Definition at line 1983 of file ImathVec.h.
      
  | 
  inline | 
Component-wise subtraction.
Definition at line 1965 of file ImathVec.h.
      
  | 
  inline | 
Component-wise division.
Definition at line 2059 of file ImathVec.h.
Component-wise division.
Definition at line 2066 of file ImathVec.h.
      
  | 
  inline | 
Component-wise division.
Definition at line 2037 of file ImathVec.h.
      
  | 
  inline | 
Component-wise division.
Definition at line 2048 of file ImathVec.h.
      
  | 
  inline | 
Assignment.
Definition at line 1878 of file ImathVec.h.
      
  | 
  inline | 
Definition at line 645 of file ImathVec.h.
      
  | 
  inline | 
Definition at line 655 of file ImathVec.h.
      
  | 
  inline | 
Equality.
Definition at line 1896 of file ImathVec.h.
      
  | 
  inline | 
Element access by index.
Definition at line 1838 of file ImathVec.h.
      
  | 
  inline | 
Element access by index.
Definition at line 1845 of file ImathVec.h.
      
  | 
  inline | 
Dot product.
Definition at line 1940 of file ImathVec.h.