|
@@ -70,19 +70,19 @@ namespace glm
|
|
|
{}
|
|
{}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4(T const & s)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4(T scalar)
|
|
|
{
|
|
{
|
|
|
- this->value[0] = col_type(s, 0, 0, 0);
|
|
|
|
|
- this->value[1] = col_type(0, s, 0, 0);
|
|
|
|
|
- this->value[2] = col_type(0, 0, s, 0);
|
|
|
|
|
|
|
+ this->value[0] = col_type(scalar, 0, 0, 0);
|
|
|
|
|
+ this->value[1] = col_type(0, scalar, 0, 0);
|
|
|
|
|
+ this->value[2] = col_type(0, 0, scalar, 0);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4
|
|
GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4
|
|
|
(
|
|
(
|
|
|
- T const & x0, T const & y0, T const & z0, T const & w0,
|
|
|
|
|
- T const & x1, T const & y1, T const & z1, T const & w1,
|
|
|
|
|
- T const & x2, T const & y2, T const & z2, T const & w2
|
|
|
|
|
|
|
+ T x0, T y0, T z0, T w0,
|
|
|
|
|
+ T x1, T y1, T z1, T w1,
|
|
|
|
|
+ T x2, T y2, T z2, T w2
|
|
|
)
|
|
)
|
|
|
{
|
|
{
|
|
|
this->value[0] = col_type(x0, y0, z0, w0);
|
|
this->value[0] = col_type(x0, y0, z0, w0);
|
|
@@ -112,9 +112,9 @@ namespace glm
|
|
|
typename X3, typename Y3, typename Z3, typename W3>
|
|
typename X3, typename Y3, typename Z3, typename W3>
|
|
|
GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4
|
|
GLM_FUNC_QUALIFIER tmat3x4<T, P>::tmat3x4
|
|
|
(
|
|
(
|
|
|
- X1 const & x1, Y1 const & y1, Z1 const & z1, W1 const & w1,
|
|
|
|
|
- X2 const & x2, Y2 const & y2, Z2 const & z2, W2 const & w2,
|
|
|
|
|
- X3 const & x3, Y3 const & y3, Z3 const & z3, W3 const & w3
|
|
|
|
|
|
|
+ X1 x1, Y1 y1, Z1 z1, W1 w1,
|
|
|
|
|
+ X2 x2, Y2 y2, Z2 z2, W2 w2,
|
|
|
|
|
+ X3 x3, Y3 y3, Z3 z3, W3 w3
|
|
|
)
|
|
)
|
|
|
{
|
|
{
|
|
|
this->value[0] = col_type(static_cast<T>(x1), value_type(y1), value_type(z1), value_type(w1));
|
|
this->value[0] = col_type(static_cast<T>(x1), value_type(y1), value_type(z1), value_type(w1));
|
|
@@ -213,47 +213,25 @@ namespace glm
|
|
|
|
|
|
|
|
// -- Accesses --
|
|
// -- Accesses --
|
|
|
|
|
|
|
|
-# ifdef GLM_FORCE_SIZE_FUNC
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER GLM_CONSTEXPR typename tmat3x4<T, P>::size_type tmat3x4<T, P>::size() const
|
|
|
|
|
- {
|
|
|
|
|
- return 3;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::size_type i)
|
|
|
|
|
- {
|
|
|
|
|
- assert(i < this->size());
|
|
|
|
|
- return this->value[i];
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type const & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::size_type i) const
|
|
|
|
|
- {
|
|
|
|
|
- assert(i < this->size());
|
|
|
|
|
- return this->value[i];
|
|
|
|
|
- }
|
|
|
|
|
-# else
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER GLM_CONSTEXPR typename tmat3x4<T, P>::length_type tmat3x4<T, P>::length() const
|
|
|
|
|
- {
|
|
|
|
|
- return 3;
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ template <typename T, precision P>
|
|
|
|
|
+ GLM_FUNC_QUALIFIER GLM_CONSTEXPR typename tmat3x4<T, P>::length_type tmat3x4<T, P>::length() const
|
|
|
|
|
+ {
|
|
|
|
|
+ return 3;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::length_type i)
|
|
|
|
|
- {
|
|
|
|
|
- assert(i < this->length());
|
|
|
|
|
- return this->value[i];
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ template <typename T, precision P>
|
|
|
|
|
+ GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::length_type i)
|
|
|
|
|
+ {
|
|
|
|
|
+ assert(i < this->length());
|
|
|
|
|
+ return this->value[i];
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
- template <typename T, precision P>
|
|
|
|
|
- GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type const & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::length_type i) const
|
|
|
|
|
- {
|
|
|
|
|
- assert(i < this->length());
|
|
|
|
|
- return this->value[i];
|
|
|
|
|
- }
|
|
|
|
|
-# endif//GLM_FORCE_SIZE_FUNC
|
|
|
|
|
|
|
+ template <typename T, precision P>
|
|
|
|
|
+ GLM_FUNC_QUALIFIER typename tmat3x4<T, P>::col_type const & tmat3x4<T, P>::operator[](typename tmat3x4<T, P>::length_type i) const
|
|
|
|
|
+ {
|
|
|
|
|
+ assert(i < this->length());
|
|
|
|
|
+ return this->value[i];
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
// -- Unary updatable operators --
|
|
// -- Unary updatable operators --
|
|
|
|
|
|
|
@@ -394,12 +372,12 @@ namespace glm
|
|
|
// -- Binary arithmetic operators --
|
|
// -- Binary arithmetic operators --
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator+(tmat3x4<T, P> const & m, T const & s)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator+(tmat3x4<T, P> const & m, T scalar)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- m[0] + s,
|
|
|
|
|
- m[1] + s,
|
|
|
|
|
- m[2] + s);
|
|
|
|
|
|
|
+ m[0] + scalar,
|
|
|
|
|
+ m[1] + scalar,
|
|
|
|
|
+ m[2] + scalar);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
@@ -412,12 +390,12 @@ namespace glm
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator-(tmat3x4<T, P> const & m, T const & s)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator-(tmat3x4<T, P> const & m, T scalar)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- m[0] - s,
|
|
|
|
|
- m[1] - s,
|
|
|
|
|
- m[2] - s);
|
|
|
|
|
|
|
+ m[0] - scalar,
|
|
|
|
|
+ m[1] - scalar,
|
|
|
|
|
+ m[2] - scalar);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
@@ -430,21 +408,21 @@ namespace glm
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator*(tmat3x4<T, P> const & m, T const & s)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator*(tmat3x4<T, P> const & m, T scalar)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- m[0] * s,
|
|
|
|
|
- m[1] * s,
|
|
|
|
|
- m[2] * s);
|
|
|
|
|
|
|
+ m[0] * scalar,
|
|
|
|
|
+ m[1] * scalar,
|
|
|
|
|
+ m[2] * scalar);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator*(T const & s, tmat3x4<T, P> const & m)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator*(T scalar, tmat3x4<T, P> const & m)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- m[0] * s,
|
|
|
|
|
- m[1] * s,
|
|
|
|
|
- m[2] * s);
|
|
|
|
|
|
|
+ m[0] * scalar,
|
|
|
|
|
+ m[1] * scalar,
|
|
|
|
|
+ m[2] * scalar);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
@@ -556,21 +534,21 @@ namespace glm
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator/(tmat3x4<T, P> const & m, T const & s)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator/(tmat3x4<T, P> const & m, T scalar)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- m[0] / s,
|
|
|
|
|
- m[1] / s,
|
|
|
|
|
- m[2] / s);
|
|
|
|
|
|
|
+ m[0] / scalar,
|
|
|
|
|
+ m[1] / scalar,
|
|
|
|
|
+ m[2] / scalar);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
template <typename T, precision P>
|
|
template <typename T, precision P>
|
|
|
- GLM_FUNC_QUALIFIER tmat3x4<T, P> operator/(T const & s, tmat3x4<T, P> const & m)
|
|
|
|
|
|
|
+ GLM_FUNC_QUALIFIER tmat3x4<T, P> operator/(T scalar, tmat3x4<T, P> const & m)
|
|
|
{
|
|
{
|
|
|
return tmat3x4<T, P>(
|
|
return tmat3x4<T, P>(
|
|
|
- s / m[0],
|
|
|
|
|
- s / m[1],
|
|
|
|
|
- s / m[2]);
|
|
|
|
|
|
|
+ scalar / m[0],
|
|
|
|
|
+ scalar / m[1],
|
|
|
|
|
+ scalar / m[2]);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// -- Boolean operators --
|
|
// -- Boolean operators --
|