OpenVDB: Vec3.h File Reference

OpenVDB 6.1.0

Classes | Namespaces | Typedefs | Functions
Vec3.h File Reference
`#include <openvdb/Exceptions.h>`
`#include "Math.h"`
`#include "Tuple.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 | Vec3< T >

## Namespaces
| openvdb
| openvdb::v6_1
| openvdb::v6_1::math

## Typedefs
using | Vec3i = Vec3< int32_t >
using | Vec3ui = Vec3< uint32_t >
using | Vec3s = Vec3< float >
using | Vec3d = Vec3< double >

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