mirror of
https://github.com/BlackMATov/vmath.hpp.git
synced 2025-12-13 12:15:56 +07:00
ext returns minimal matrices for rotate and scale
This commit is contained in:
62
README.md
62
README.md
@@ -1812,50 +1812,56 @@ template < typename T >
|
||||
mat<T, 4> translate(const mat<T, 4>& m, const vec<T, 3>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate(const qua<T>& q);
|
||||
mat<T, 3> rotate(const qua<T>& q);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate(const mat<T, 4>& m, const qua<T>& q);
|
||||
mat<T, 3> rotate(const mat<T, 3>& m, const qua<T>& q);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate(T angle, const vec<T, 3>& axis);
|
||||
mat<T, 3> rotate(T angle, const vec<T, 3>& axis);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate(const mat<T, 4>& m, T angle, const vec<T, 3>& axis);
|
||||
mat<T, 3> rotate(const mat<T, 3>& m, T angle, const vec<T, 3>& axis);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_x(T angle);
|
||||
mat<T, 3> rotate_x(T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_x(const mat<T, 4>& m, T angle);
|
||||
mat<T, 3> rotate_x(const mat<T, 3>& m, T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_y(T angle);
|
||||
mat<T, 3> rotate_y(T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_y(const mat<T, 4>& m, T angle);
|
||||
mat<T, 3> rotate_y(const mat<T, 3>& m, T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_z(T angle);
|
||||
mat<T, 3> rotate_z(T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> rotate_z(const mat<T, 4>& m, T angle);
|
||||
mat<T, 3> rotate_z(const mat<T, 3>& m, T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> scale(T x, T y, T z);
|
||||
mat<T, 3> scale(T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> scale(const mat<T, 4>& m, T x, T y, T z);
|
||||
mat<T, 3> scale(const mat<T, 3>& m, T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> scale(const vec<T, 3>& v);
|
||||
mat<T, 3> scale(const vec<T, 3>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> scale(const mat<T, 4>& m, const vec<T, 3>& v);
|
||||
mat<T, 3> scale(const mat<T, 3>& m, const vec<T, 3>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> look_at_lh(const vec<T, 3>& dir, const vec<T, 3>& up);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> look_at_lh(const vec<T, 3>& eye, const vec<T, 3>& at, const vec<T, 3>& up);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> look_at_rh(const vec<T, 3>& dir, const vec<T, 3>& up);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> look_at_rh(const vec<T, 3>& eye, const vec<T, 3>& at, const vec<T, 3>& up);
|
||||
```
|
||||
@@ -1876,46 +1882,46 @@ template < typename T >
|
||||
mat<T, 3> translate(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> rotate(T angle);
|
||||
mat<T, 2> rotate(T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> rotate(const mat<T, 3>& m, T angle);
|
||||
mat<T, 2> rotate(const mat<T, 2>& m, T angle);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> scale(T x, T y);
|
||||
mat<T, 2> scale(T x, T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> scale(const mat<T, 3>& m, T x, T y);
|
||||
mat<T, 2> scale(const mat<T, 2>& m, T x, T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> scale(const vec<T, 2>& v);
|
||||
mat<T, 2> scale(const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> scale(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
mat<T, 2> scale(const mat<T, 2>& m, const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear(T x, T y);
|
||||
mat<T, 2> shear(T x, T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear(const mat<T, 3>& m, T x, T y);
|
||||
mat<T, 2> shear(const mat<T, 2>& m, T x, T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear(const vec<T, 2>& v);
|
||||
mat<T, 2> shear(const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
mat<T, 2> shear(const mat<T, 2>& m, const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear_x(T y);
|
||||
mat<T, 2> shear_x(T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear_x(const mat<T, 3>& m, T y);
|
||||
mat<T, 2> shear_x(const mat<T, 2>& m, T y);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear_y(T x);
|
||||
mat<T, 2> shear_y(T x);
|
||||
|
||||
template < typename T >
|
||||
mat<T, 3> shear_y(const mat<T, 3>& m, T x);
|
||||
mat<T, 2> shear_y(const mat<T, 2>& m, T x);
|
||||
```
|
||||
|
||||
### Matrix Projections
|
||||
|
||||
Reference in New Issue
Block a user