|
|
@ -164,97 +164,97 @@ namespace glm |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<1, T, Q> make_vec1(vec<1, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<1, T, Q> make_vec1(vec<1, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return v; |
|
|
|
return v; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<1, T, Q> make_vec1(vec<2, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<1, T, Q> make_vec1(vec<2, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<1, T, Q> make_vec1(vec<3, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<1, T, Q> make_vec1(vec<3, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<1, T, Q> make_vec1(vec<4, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<1, T, Q> make_vec1(vec<4, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
return vec<1, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<2, T, Q> make_vec2(vec<1, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<2, T, Q> make_vec2(vec<1, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<2, T, Q>(v.x, static_cast<T>(0)); |
|
|
|
return vec<2, T, Q>(v.x, static_cast<T>(0)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<2, T, Q> make_vec2(vec<2, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<2, T, Q> make_vec2(vec<2, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return v; |
|
|
|
return v; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<2, T, Q> make_vec2(vec<3, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<2, T, Q> make_vec2(vec<3, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<2, T, Q>(v); |
|
|
|
return vec<2, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<2, T, Q> make_vec2(vec<4, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<2, T, Q> make_vec2(vec<4, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<2, T, Q>(v); |
|
|
|
return vec<2, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<3, T, Q> make_vec3(vec<1, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<3, T, Q> make_vec3(vec<1, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<3, T, Q>(v.x, static_cast<T>(0), static_cast<T>(0)); |
|
|
|
return vec<3, T, Q>(v.x, static_cast<T>(0), static_cast<T>(0)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<3, T, Q> make_vec3(vec<2, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<3, T, Q> make_vec3(vec<2, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<3, T, Q>(v.x, v.y, static_cast<T>(0)); |
|
|
|
return vec<3, T, Q>(v.x, v.y, static_cast<T>(0)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<3, T, Q> make_vec3(vec<3, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<3, T, Q> make_vec3(vec<3, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return v; |
|
|
|
return v; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<3, T, Q> make_vec3(vec<4, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<3, T, Q> make_vec3(vec<4, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<3, T, Q>(v); |
|
|
|
return vec<3, T, Q>(v); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<4, T, Q> make_vec4(vec<1, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<4, T, Q> make_vec4(vec<1, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<4, T, Q>(v.x, static_cast<T>(0), static_cast<T>(0), static_cast<T>(1)); |
|
|
|
return vec<4, T, Q>(v.x, static_cast<T>(0), static_cast<T>(0), static_cast<T>(1)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<4, T, Q> make_vec4(vec<2, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<4, T, Q> make_vec4(vec<2, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<4, T, Q>(v.x, v.y, static_cast<T>(0), static_cast<T>(1)); |
|
|
|
return vec<4, T, Q>(v.x, v.y, static_cast<T>(0), static_cast<T>(1)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<4, T, Q> make_vec4(vec<3, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<4, T, Q> make_vec4(vec<3, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return vec<4, T, Q>(v.x, v.y, v.z, static_cast<T>(1)); |
|
|
|
return vec<4, T, Q>(v.x, v.y, v.z, static_cast<T>(1)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
template <typename T, qualifier Q> |
|
|
|
template <typename T, qualifier Q> |
|
|
|
inline vec<4, T, Q> make_vec4(vec<4, T, Q> const& v) |
|
|
|
GLM_FUNC_DECL vec<4, T, Q> make_vec4(vec<4, T, Q> const& v) |
|
|
|
{ |
|
|
|
{ |
|
|
|
return v; |
|
|
|
return v; |
|
|
|
} |
|
|
|
} |
|
|
|