29 #ifndef glm_core_type_mat3x2 30 #define glm_core_type_mat3x2 37 template <
typename T>
struct tvec1;
38 template <
typename T>
struct tvec2;
39 template <
typename T>
struct tvec3;
40 template <
typename T>
struct tvec4;
41 template <
typename T>
struct tmat2x2;
42 template <
typename T>
struct tmat2x3;
43 template <
typename T>
struct tmat2x4;
44 template <
typename T>
struct tmat3x2;
45 template <
typename T>
struct tmat3x3;
46 template <
typename T>
struct tmat3x4;
47 template <
typename T>
struct tmat4x2;
48 template <
typename T>
struct tmat4x3;
49 template <
typename T>
struct tmat4x4;
58 typedef std::size_t size_type;
59 typedef tvec2<T> col_type;
60 typedef tvec3<T> row_type;
61 GLM_FUNC_DECL size_type length()
const;
62 static GLM_FUNC_DECL size_type col_size();
63 static GLM_FUNC_DECL size_type row_size();
65 typedef tmat3x2<T> type;
66 typedef tmat2x3<T> transpose_type;
74 GLM_FUNC_DECL tmat3x2();
75 GLM_FUNC_DECL tmat3x2(tmat3x2
const & m);
77 GLM_FUNC_DECL
explicit tmat3x2(
79 GLM_FUNC_DECL
explicit tmat3x2(
80 value_type
const & s);
81 GLM_FUNC_DECL
explicit tmat3x2(
82 value_type
const & x0, value_type
const & y0,
83 value_type
const & x1, value_type
const & y1,
84 value_type
const & x2, value_type
const & y2);
85 GLM_FUNC_DECL
explicit tmat3x2(
93 GLM_FUNC_DECL
explicit tmat3x2(
98 typename X1,
typename Y1,
99 typename X2,
typename Y2,
100 typename X3,
typename Y3
102 GLM_FUNC_DECL
explicit tmat3x2(
103 X1
const & x1, Y1
const & y1,
104 X2
const & x2, Y2
const & y2,
105 X3
const & x3, Y3
const & y3);
107 template <
typename V1,
typename V2,
typename V3>
108 GLM_FUNC_DECL
explicit tmat3x2(
109 tvec2<V1>
const & v1,
110 tvec2<V2>
const & v2,
111 tvec2<V3>
const & v3);
114 template <
typename U>
115 GLM_FUNC_DECL
explicit tmat3x2(tmat3x2<U>
const & m);
117 GLM_FUNC_DECL
explicit tmat3x2(tmat2x2<T>
const & x);
118 GLM_FUNC_DECL
explicit tmat3x2(tmat3x3<T>
const & x);
119 GLM_FUNC_DECL
explicit tmat3x2(tmat4x4<T>
const & x);
120 GLM_FUNC_DECL
explicit tmat3x2(tmat2x3<T>
const & x);
121 GLM_FUNC_DECL
explicit tmat3x2(tmat2x4<T>
const & x);
122 GLM_FUNC_DECL
explicit tmat3x2(tmat3x4<T>
const & x);
123 GLM_FUNC_DECL
explicit tmat3x2(tmat4x2<T>
const & x);
124 GLM_FUNC_DECL
explicit tmat3x2(tmat4x3<T>
const & x);
127 GLM_FUNC_DECL col_type & operator[](size_type i);
128 GLM_FUNC_DECL col_type
const & operator[](size_type i)
const;
131 GLM_FUNC_DECL tmat3x2<T> & operator= (tmat3x2<T>
const & m);
132 template <
typename U>
133 GLM_FUNC_DECL tmat3x2<T> & operator= (tmat3x2<U>
const & m);
134 template <
typename U>
135 GLM_FUNC_DECL tmat3x2<T> & operator+= (U
const & s);
136 template <
typename U>
137 GLM_FUNC_DECL tmat3x2<T> & operator+= (tmat3x2<U>
const & m);
138 template <
typename U>
139 GLM_FUNC_DECL tmat3x2<T> & operator-= (U
const & s);
140 template <
typename U>
141 GLM_FUNC_DECL tmat3x2<T> & operator-= (tmat3x2<U>
const & m);
142 template <
typename U>
143 GLM_FUNC_DECL tmat3x2<T> & operator*= (U
const & s);
144 template <
typename U>
145 GLM_FUNC_DECL tmat3x2<T> & operator*= (tmat3x2<U>
const & m);
146 template <
typename U>
147 GLM_FUNC_DECL tmat3x2<T> & operator/= (U
const & s);
149 GLM_FUNC_DECL tmat3x2<T> & operator++ ();
150 GLM_FUNC_DECL tmat3x2<T> & operator-- ();
154 template <
typename T>
155 tmat3x2<T> operator+ (
156 tmat3x2<T>
const & m,
157 typename tmat3x2<T>::value_type
const & s);
159 template <
typename T>
160 tmat3x2<T> operator+ (
161 tmat3x2<T>
const & m1,
162 tmat3x2<T>
const & m2);
164 template <
typename T>
165 tmat3x2<T> operator- (
166 tmat3x2<T>
const & m,
167 typename tmat3x2<T>::value_type
const & s);
169 template <
typename T>
170 tmat3x2<T> operator- (
171 tmat3x2<T>
const & m1,
172 tmat3x2<T>
const & m2);
174 template <
typename T>
175 tmat3x2<T> operator* (
176 tmat3x2<T>
const & m,
177 typename tmat3x2<T>::value_type
const & s);
179 template <
typename T>
180 tmat3x2<T> operator* (
181 typename tmat3x2<T>::value_type
const & s,
182 tmat3x2<T>
const & m);
184 template <
typename T>
185 typename tmat3x2<T>::col_type operator* (
186 tmat3x2<T>
const & m,
187 typename tmat3x2<T>::row_type
const & v);
189 template <
typename T>
190 typename tmat3x2<T>::row_type operator* (
191 typename tmat3x2<T>::col_type
const & v,
192 tmat3x2<T>
const & m);
194 template <
typename T>
195 tmat2x2<T> operator* (
196 tmat3x2<T>
const & m1,
197 tmat2x3<T>
const & m2);
199 template <
typename T>
200 tmat3x2<T> operator* (
201 tmat3x2<T>
const & m1,
202 tmat3x3<T>
const & m2);
204 template <
typename T>
205 tmat4x2<T> operator* (
206 tmat3x2<T>
const & m1,
207 tmat4x3<T>
const & m2);
209 template <
typename T>
210 tmat3x2<T> operator/ (
211 tmat3x2<T>
const & m,
212 typename tmat3x2<T>::value_type
const & s);
214 template <
typename T>
215 tmat3x2<T> operator/ (
216 typename tmat3x2<T>::value_type
const & s,
217 tmat3x2<T>
const & m);
220 template <
typename T>
221 tmat3x2<T>
const operator- (
222 tmat3x2<T>
const & m);
224 template <
typename T>
225 tmat3x2<T>
const operator-- (
226 tmat3x2<T>
const & m,
229 template <
typename T>
230 tmat3x2<T>
const operator++ (
231 tmat3x2<T>
const & m,
263 #ifndef GLM_EXTERNAL_TEMPLATE 267 #endif //glm_core_type_mat3x2 OpenGL Mathematics (glm.g-truc.net)
Definition: _detail.hpp:38
detail::tmat3x2< highp_float > highp_mat3x2
3 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat3x2.hpp:258
detail::tmat3x2< lowp_float > lowp_mat3x2
3 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat3x2.hpp:244
Definition: type_mat2x2.hpp:44
OpenGL Mathematics (glm.g-truc.net)
detail::tmat3x2< mediump_float > mediump_mat3x2
3 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat3x2.hpp:251