Back to Mame

0.9.8: transform2.hpp Source File

3rdparty/glm/doc/api/a00106_source.html

latest5.4 KB
Original Source

| | 0.9.8 |

transform2.hpp

Go to the documentation of this file.

1

14 #pragma once

15

16 // Dependency:

17 #include "../glm.hpp"

18 #include "../gtx/transform.hpp"

19

20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)

21 # pragma message("GLM: GLM_GTX_transform2 extension included")

22 #endif

23

24 namespace glm

25 {

28

31template <typename T, precision P>

32 GLM_FUNC_DECL tmat3x3<T, P> shearX2D(

33 tmat3x3<T, P> const & m,

34 T y);

35

38template <typename T, precision P>

39 GLM_FUNC_DECL tmat3x3<T, P> shearY2D(

40 tmat3x3<T, P> const & m,

41 T x);

42

45template <typename T, precision P>

46 GLM_FUNC_DECL tmat4x4<T, P> shearX3D(

47const tmat4x4<T, P> & m,

48 T y,

49 T z);

50

53template <typename T, precision P>

54 GLM_FUNC_DECL tmat4x4<T, P> shearY3D(

55const tmat4x4<T, P> & m,

56 T x,

57 T z);

58

61template <typename T, precision P>

62 GLM_FUNC_DECL tmat4x4<T, P> shearZ3D(

63const tmat4x4<T, P> & m,

64 T x,

65 T y);

66

67//template <typename T> GLM_FUNC_QUALIFIER tmat4x4<T, P> shear(const tmat4x4<T, P> & m, shearPlane, planePoint, angle)

68// Identity + tan(angle) * cross(Normal, OnPlaneVector) 0

69// - dot(PointOnPlane, normal) * OnPlaneVector 1

70

71// Reflect functions seem to don't work

72//template <typename T> tmat3x3<T, P> reflect2D(const tmat3x3<T, P> & m, const tvec3<T, P>& normal){return reflect2DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)

73//template <typename T> tmat4x4<T, P> reflect3D(const tmat4x4<T, P> & m, const tvec3<T, P>& normal){return reflect3DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)

74

77template <typename T, precision P>

78 GLM_FUNC_DECL tmat3x3<T, P> proj2D(

79const tmat3x3<T, P> & m,

80const tvec3<T, P>& normal);

81

84template <typename T, precision P>

85 GLM_FUNC_DECL tmat4x4<T, P> proj3D(

86const tmat4x4<T, P> & m,

87const tvec3<T, P>& normal);

88

91template <typename valType, precision P>

92 GLM_FUNC_DECL tmat4x4<valType, P> scaleBias(

93 valType scale,

94 valType bias);

95

98template <typename valType, precision P>

99 GLM_FUNC_DECL tmat4x4<valType, P> scaleBias(

100 tmat4x4<valType, P> const & m,

101 valType scale,

102 valType bias);

103

105 }// namespace glm

106

107 #include "transform2.inl"

glm::scaleBias

GLM_FUNC_DECL tmat4x4< valType, P > scaleBias(tmat4x4< valType, P > const &m, valType scale, valType bias)

Build a scale bias matrix.

glm::proj2D

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::proj3D

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

Definition: _noise.hpp:11

glm::shearY2D

GLM_FUNC_DECL tmat3x3< T, P > shearY2D(tmat3x3< T, P > const &m, T x)

Transforms a matrix with a shearing on Y axis.

glm::shearY3D

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::shearX2D

GLM_FUNC_DECL tmat3x3< T, P > shearX2D(tmat3x3< T, P > const &m, T y)

Transforms a matrix with a shearing on X axis.

glm::shearX3D

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::scale

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::shearZ3D

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.


Generated by 1.8.10