mirror of
https://github.com/BlackMATov/vmath.hpp.git
synced 2025-12-14 20:31:25 +07:00
add matrix transform overloads
This commit is contained in:
32
README.md
32
README.md
@@ -1066,9 +1066,15 @@ constexpr mat<T, Size> column(const mat<T, Size>& m, size_t index, const vec<T,
|
||||
### Matrix Transform 3D
|
||||
|
||||
```cpp
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> translate(T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> translate(const vec<T, 3>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> translate(const mat<T, 4>& m, T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> translate(const mat<T, 4>& m, const vec<T, 3>& v);
|
||||
|
||||
@@ -1078,12 +1084,20 @@ mat<T, 4> 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);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> scale(T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> scale(const vec<T, 3>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> scale(const mat<T, 4>& m, T x, T y, T z);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 4> scale(const mat<T, 4>& m, const vec<T, 3>& v);
|
||||
|
||||
// look_at
|
||||
|
||||
template < typename T >
|
||||
mat<T, 4> look_at_lh(const vec<T, 3>& eye, const vec<T, 3>& at, const vec<T, 3>& up);
|
||||
|
||||
@@ -1094,9 +1108,15 @@ mat<T, 4> look_at_rh(const vec<T, 3>& eye, const vec<T, 3>& at, const vec<T, 3>&
|
||||
### Matrix Transform 2D
|
||||
|
||||
```cpp
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> translate(T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> translate(const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> translate(const mat<T, 3>& m, T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> translate(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
|
||||
@@ -1106,15 +1126,27 @@ mat<T, 3> rotate(T angle);
|
||||
template < typename T >
|
||||
mat<T, 3> rotate(const mat<T, 3>& m, T angle);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> scale(T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> scale(const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> scale(const mat<T, 3>& m, T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> scale(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> shear(T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> shear(const vec<T, 2>& v);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> shear(const mat<T, 3>& m, T x, T y);
|
||||
|
||||
template < typename T >
|
||||
constexpr mat<T, 3> shear(const mat<T, 3>& m, const vec<T, 2>& v);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user