OpenVDB 13.0.0

Loading...
Searching...
No Matches
Quat.h File Reference
`#include "Mat.h"`
`#include "Mat3.h"`
`#include "Math.h"`
`#include "Vec3.h"`
`#include <openvdb/Exceptions.h>`
`#include <openvdb/util/Assert.h>`
`#include <cmath>`
`#include <iostream>`
`#include <sstream>`
`#include <string>`

Go to the source code of this file.

## Classes
class | Quat< T >
struct | Quat< T >::UnsafeConstruct

## Namespaces
namespace | openvdb
namespace | openvdb::v13_0
namespace | openvdb::v13_0::math

## Typedefs
using | Quats = Quat<float>
using | Quatd = Quat<double>

## Functions
template<typename T>
Quat< T > | slerp (const Quat< T > &q1, const Quat< T > &q2, T t, T tolerance=0.00001)
| Linear interpolation between the two quaternions.
template<typename S, typename T>
Quat< T > | operator* (S scalar, const Quat< T > &q)
| Multiply each element of the given quaternion by scalar and return the result.
template<typename T, typename T0>
Mat3< T > | slerp (const Mat3< T0 > &m1, const Mat3< T0 > &m2, T t)
| Interpolate between m1 and m2. Converts to quaternion form and uses slerp m1 and m2 must be rotation matrices!
template<typename T, typename T0>
Mat3< T > | bezLerp (const Mat3< T0 > &m1, const Mat3< T0 > &m2, const Mat3< T0 > &m3, const Mat3< T0 > &m4, T t)
template<>
math::Quats | zeroVal< math::Quats > ()
template<>
math::Quatd | zeroVal< math::Quatd > ()