Loading...
Searching...
No Matches
Mat3.h File Reference
`#include <openvdb/Exceptions.h>`
`#include "Vec3.h"`
`#include "Mat.h"`
`#include <algorithm>`
`#include <cassert>`
`#include <cmath>`
`#include <iomanip>`

Go to the source code of this file.

## Classes

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

## Namespaces

namespace | openvdb
namespace | openvdb::v11_0
namespace | openvdb::v11_0::math
namespace | openvdb::v11_0::math::mat3_internal

## Typedefs

using | Mat3s = Mat3< float >
using | Mat3d = Mat3< double >
using | Mat3f = Mat3d

## Functions

template<typename T0 , typename T1 >
Mat3< typename promote< T0, T1 >::type > | operator* (const Mat3< T0 > &m0, const Mat3< T1 > &m1)
| Multiply m0 by m1 and return the resulting matrix.
template<typename T >
Mat3< T > | outerProduct (const Vec3< T > &v1, const Vec3< T > &v2)
template<typename T , typename T0 >
Mat3< T > | powLerp (const Mat3< T0 > &m1, const Mat3< T0 > &m2, T t)
template<typename T >
void | pivot (int i, int j, Mat3< T > &S, Vec3< T > &D, Mat3< T > &Q)
template<typename T >
bool | diagonalizeSymmetricMatrix (const Mat3< T > &input, Mat3< T > &Q, Vec3< T > &D, unsigned int MAX_ITERATIONS=250)
| Use Jacobi iterations to decompose a symmetric 3x3 matrix (diagonalize and compute eigenvectors)
template<typename T >
Mat3< T > | Abs (const Mat3< T > &m)
template<typename Type1 , typename Type2 >
Mat3< Type1 > | cwiseAdd (const Mat3< Type1 > &m, const Type2 s)
template<typename T >
bool | cwiseLessThan (const Mat3< T > &m0, const Mat3< T > &m1)
template<typename T >
bool | cwiseGreaterThan (const Mat3< T > &m0, const Mat3< T > &m1)
template<>
math::Mat3s | zeroVal< math::Mat3s > ()
template<>
math::Mat3d | zeroVal< math::Mat3d > ()