18 #include "../gtx/transform.hpp"
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
21 # pragma message("GLM: GLM_GTX_transform2 extension included")
31 template <
typename T, precision P>
32 GLM_FUNC_DECL tmat3x3<T, P>
shearX2D(
33 tmat3x3<T, P>
const & m,
38 template <
typename T, precision P>
39 GLM_FUNC_DECL tmat3x3<T, P>
shearY2D(
40 tmat3x3<T, P>
const & m,
45 template <
typename T, precision P>
46 GLM_FUNC_DECL tmat4x4<T, P>
shearX3D(
47 const tmat4x4<T, P> & m,
53 template <
typename T, precision P>
54 GLM_FUNC_DECL tmat4x4<T, P>
shearY3D(
55 const tmat4x4<T, P> & m,
61 template <
typename T, precision P>
62 GLM_FUNC_DECL tmat4x4<T, P>
shearZ3D(
63 const tmat4x4<T, P> & m,
77 template <
typename T, precision P>
78 GLM_FUNC_DECL tmat3x3<T, P>
proj2D(
79 const tmat3x3<T, P> & m,
80 const tvec3<T, P>& normal);
84 template <
typename T, precision P>
85 GLM_FUNC_DECL tmat4x4<T, P>
proj3D(
86 const tmat4x4<T, P> & m,
87 const tvec3<T, P>& normal);
91 template <
typename valType, precision P>
92 GLM_FUNC_DECL tmat4x4<valType, P>
scaleBias(
98 template <
typename valType, precision P>
99 GLM_FUNC_DECL tmat4x4<valType, P>
scaleBias(
100 tmat4x4<valType, P>
const & m,
107 #include "transform2.inl"
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias(tmat4x4< valType, P > const &m, valType scale, valType bias)
Build a scale bias matrix.
GLM_FUNC_DECL tmat3x3< T, P > proj2D(const tmat3x3< T, P > &m, const tvec3< T, P > &normal)
Build planar projection matrix along normal axis.
GLM_FUNC_DECL tmat4x4< T, P > proj3D(const tmat4x4< T, P > &m, const tvec3< T, P > &normal)
Build planar projection matrix along normal axis.
GLM_FUNC_DECL tmat3x3< T, P > shearY2D(tmat3x3< T, P > const &m, T x)
Transforms a matrix with a shearing on Y axis.
GLM_FUNC_DECL tmat4x4< T, P > shearY3D(const tmat4x4< T, P > &m, T x, T z)
Transforms a matrix with a shearing on Y axis.
GLM_FUNC_DECL tmat3x3< T, P > shearX2D(tmat3x3< T, P > const &m, T y)
Transforms a matrix with a shearing on X axis.
GLM_FUNC_DECL tmat4x4< T, P > shearX3D(const tmat4x4< T, P > &m, T y, T z)
Transforms a matrix with a shearing on X axis From GLM_GTX_transform2 extension.
GLM_FUNC_DECL tmat4x4< T, P > scale(tmat4x4< T, P > const &m, tvec3< T, P > const &v)
Builds a scale 4 * 4 matrix created from 3 scalars.
GLM_FUNC_DECL tmat4x4< T, P > shearZ3D(const tmat4x4< T, P > &m, T x, T y)
Transforms a matrix with a shearing on Z axis.