OpenVDB  12.0.0
Classes | Namespaces | Typedefs | Functions
Vec4.h File Reference
#include <openvdb/Exceptions.h>
#include "Math.h"
#include "Tuple.h"
#include "Vec3.h"
#include <algorithm>
#include <cmath>
#include <type_traits>

Go to the source code of this file.

Classes

class  Mat3< T >
 3x3 matrix class. More...
 
class  Vec4< T >
 

Namespaces

 openvdb
 
 openvdb::v12_0
 
 openvdb::v12_0::math
 

Typedefs

using Vec4i = Vec4< int32_t >
 
using Vec4ui = Vec4< uint32_t >
 
using Vec4s = Vec4< float >
 
using Vec4d = Vec4< double >
 

Functions

template<typename T0 , typename T1 >
bool operator== (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Equality operator, does exact floating point comparisons. More...
 
template<typename T0 , typename T1 >
bool operator!= (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Inequality operator, does exact floating point comparisons. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator* (S scalar, const Vec4< T > &v)
 Multiply each element of the given vector by scalar and return the result. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator* (const Vec4< T > &v, S scalar)
 Multiply each element of the given vector by scalar and return the result. More...
 
template<typename T0 , typename T1 >
Vec4< typename promote< T0, T1 >::type > operator* (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Multiply corresponding elements of v0 and v1 and return the result. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator/ (S scalar, const Vec4< T > &v)
 Divide scalar by each element of the given vector and return the result. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator/ (const Vec4< T > &v, S scalar)
 Divide each element of the given vector by scalar and return the result. More...
 
template<typename T0 , typename T1 >
Vec4< typename promote< T0, T1 >::type > operator/ (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Divide corresponding elements of v0 and v1 and return the result. More...
 
template<typename T0 , typename T1 >
Vec4< typename promote< T0, T1 >::type > operator+ (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Add corresponding elements of v0 and v1 and return the result. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator+ (const Vec4< T > &v, S scalar)
 Add scalar to each element of the given vector and return the result. More...
 
template<typename T0 , typename T1 >
Vec4< typename promote< T0, T1 >::type > operator- (const Vec4< T0 > &v0, const Vec4< T1 > &v1)
 Subtract corresponding elements of v0 and v1 and return the result. More...
 
template<typename S , typename T >
Vec4< typename promote< S, T >::type > operator- (const Vec4< T > &v, S scalar)
 Subtract scalar from each element of the given vector and return the result. More...
 
template<typename T >
bool isApproxEqual (const Vec4< T > &a, const Vec4< T > &b)
 
template<typename T >
bool isApproxEqual (const Vec4< T > &a, const Vec4< T > &b, const Vec4< T > &eps)
 
template<typename T >
Vec4< T > Abs (const Vec4< T > &v)
 
template<typename T >
Vec4< T > minComponent (const Vec4< T > &v1, const Vec4< T > &v2)
 Return component-wise minimum of the two vectors. More...
 
template<typename T >
Vec4< T > maxComponent (const Vec4< T > &v1, const Vec4< T > &v2)
 Return component-wise maximum of the two vectors. More...
 
template<typename T >
Vec4< T > Exp (Vec4< T > v)
 Return a vector with the exponent applied to each of the components of the input vector. More...
 
template<typename T >
Vec4< T > Log (Vec4< T > v)
 Return a vector with log applied to each of the components of the input vector. More...