Main Page
Related Pages
Modules
Files
File List
G:
Repository
glm
glm
gtx
transform2.hpp
Go to the documentation of this file.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#ifndef GLM_GTX_transform2
40
#define GLM_GTX_transform2 GLM_VERSION
41
42
// Dependency:
43
#include "../glm.hpp"
44
#include "../gtx/transform.hpp"
45
46
#if(defined(GLM_MESSAGES) && !defined(glm_ext))
47
# pragma message("GLM: GLM_GTX_transform2 extension included")
48
#endif
49
50
namespace
glm
51
{
54
57
template
<
typename
T>
58
detail::tmat3x3<T>
shearX2D
(
59
detail::tmat3x3<T>
const
& m,
60
T y);
61
64
template
<
typename
T>
65
detail::tmat3x3<T>
shearY2D
(
66
detail::tmat3x3<T>
const
& m,
67
T x);
68
71
template
<
typename
T>
72
detail::tmat4x4<T>
shearX3D
(
73
const
detail::tmat4x4<T> & m,
74
T y,
75
T z);
76
79
template
<
typename
T>
80
detail::tmat4x4<T>
shearY3D
(
81
const
detail::tmat4x4<T> & m,
82
T x,
83
T z);
84
87
template
<
typename
T>
88
detail::tmat4x4<T>
shearZ3D
(
89
const
detail::tmat4x4<T> & m,
90
T x,
91
T y);
92
93
//template <typename T> GLM_FUNC_QUALIFIER detail::tmat4x4<T> shear(const detail::tmat4x4<T> & m, shearPlane, planePoint, angle)
94
// Identity + tan(angle) * cross(Normal, OnPlaneVector) 0
95
// - dot(PointOnPlane, normal) * OnPlaneVector 1
96
97
// Reflect functions seem to don't work
98
//template <typename T> detail::tmat3x3<T> reflect2D(const detail::tmat3x3<T> & m, const detail::tvec3<T>& normal){return reflect2DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)
99
//template <typename T> detail::tmat4x4<T> reflect3D(const detail::tmat4x4<T> & m, const detail::tvec3<T>& normal){return reflect3DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)
100
103
template
<
typename
T>
104
detail::tmat3x3<T>
proj2D
(
105
const
detail::tmat3x3<T> & m,
106
const
detail::tvec3<T>& normal);
107
110
template
<
typename
T>
111
detail::tmat4x4<T>
proj3D
(
112
const
detail::tmat4x4<T> & m,
113
const
detail::tvec3<T>& normal);
114
117
template
<
typename
valType>
118
detail::tmat4x4<valType>
scaleBias
(
119
valType
scale
,
120
valType bias);
121
124
template
<
typename
valType>
125
detail::tmat4x4<valType>
scaleBias
(
126
detail::tmat4x4<valType>
const
& m,
127
valType
scale
,
128
valType bias);
129
131
}
// namespace glm
132
133
#include "transform2.inl"
134
135
#endif//GLM_GTX_transform2
Generated by
1.8.2