Mathter
A configurable 3D math library for game developers.
QuaternionVectorArithmetic.hpp
Go to the documentation of this file.
1 #pragma once
2 
3 #include "QuaternionImpl.hpp"
4 
5 namespace mathter {
6 
7 
9 template <class T, bool QPacked, bool PackedA>
11  // sandwich product
13 }
14 
16 template <class T, bool QPacked, bool PackedA>
18  // sandwich product
20 }
21 
23 template <class T, bool QPacked, bool PackedA>
25  // sandwich product
26  return vec = Vector<T, 3, PackedA>(q * Quaternion<T, QPacked>(vec) * Inverse(q));
27 }
28 
29 
30 } // namespace mathter
Matrix< T, Dim, Dim, Order, Layout, Packed > Inverse(const Matrix< T, Dim, Dim, Order, Layout, Packed > &m)
Returns the inverse of the matrix.
Definition: MatrixFunction.hpp:46
Allows you to do quaternion math and represent rotation in a compact way.
Definition: Definitions.hpp:69
auto operator*(const Matrix< T, Rows1, Match, Order1, eMatrixLayout::ROW_MAJOR, Packed > &lhs, const Matrix< U, Match, Columns2, Order2, eMatrixLayout::ROW_MAJOR, Packed > &rhs) -> Matrix< V, Rows1, Columns2, Order1, eMatrixLayout::ROW_MAJOR, Packed >
Definition: MatrixArithmetic.hpp:78
Represents a vector in N-dimensional space.
Definition: Definitions.hpp:57
Definition: Approx.hpp:11
Matrix< T1, Dim, Dim, Order1, Layout1, Packed > & operator*=(Matrix< T1, Dim, Dim, Order1, Layout1, Packed > &lhs, const Matrix< T2, Dim, Dim, Order2, Layout2, Packed > &rhs)
Definition: MatrixArithmetic.hpp:198