0.9.9 API documentation
Loading...
Searching...
No Matches
vector_common.hpp
Go to the documentation of this file.
1
13
14#pragma once
15
16// Dependency:
18#include "../common.hpp"
19
20#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
21# pragma message("GLM: GLM_EXT_vector_common extension included")
22#endif
23
24namespace glm
25{
28
34 template<length_t L, typename T, qualifier Q>
35 GLM_FUNC_DECL GLM_CONSTEXPR vec<L, T, Q> min(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c);
36
42 template<length_t L, typename T, qualifier Q>
43 GLM_FUNC_DECL GLM_CONSTEXPR vec<L, T, Q> min(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c, vec<L, T, Q> const& d);
44
50 template<length_t L, typename T, qualifier Q>
51 GLM_FUNC_DECL GLM_CONSTEXPR vec<L, T, Q> max(vec<L, T, Q> const& x, vec<L, T, Q> const& y, vec<L, T, Q> const& z);
52
58 template<length_t L, typename T, qualifier Q>
59 GLM_FUNC_DECL GLM_CONSTEXPR vec<L, T, Q> max( vec<L, T, Q> const& x, vec<L, T, Q> const& y, vec<L, T, Q> const& z, vec<L, T, Q> const& w);
60
68 template<length_t L, typename T, qualifier Q>
69 GLM_FUNC_DECL vec<L, T, Q> fmin(vec<L, T, Q> const& x, T y);
70
78 template<length_t L, typename T, qualifier Q>
79 GLM_FUNC_DECL vec<L, T, Q> fmin(vec<L, T, Q> const& x, vec<L, T, Q> const& y);
80
88 template<length_t L, typename T, qualifier Q>
89 GLM_FUNC_DECL vec<L, T, Q> fmin(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c);
90
98 template<length_t L, typename T, qualifier Q>
99 GLM_FUNC_DECL vec<L, T, Q> fmin(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c, vec<L, T, Q> const& d);
100
108 template<length_t L, typename T, qualifier Q>
109 GLM_FUNC_DECL vec<L, T, Q> fmax(vec<L, T, Q> const& a, T b);
110
118 template<length_t L, typename T, qualifier Q>
119 GLM_FUNC_DECL vec<L, T, Q> fmax(vec<L, T, Q> const& a, vec<L, T, Q> const& b);
120
128 template<length_t L, typename T, qualifier Q>
129 GLM_FUNC_DECL vec<L, T, Q> fmax(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c);
130
138 template<length_t L, typename T, qualifier Q>
139 GLM_FUNC_DECL vec<L, T, Q> fmax(vec<L, T, Q> const& a, vec<L, T, Q> const& b, vec<L, T, Q> const& c, vec<L, T, Q> const& d);
140
148 template<length_t L, typename T, qualifier Q>
149 GLM_FUNC_DECL vec<L, T, Q> fclamp(vec<L, T, Q> const& x, T minVal, T maxVal);
150
158 template<length_t L, typename T, qualifier Q>
159 GLM_FUNC_DECL vec<L, T, Q> fclamp(vec<L, T, Q> const& x, vec<L, T, Q> const& minVal, vec<L, T, Q> const& maxVal);
160
168 template<length_t L, typename T, qualifier Q>
169 GLM_FUNC_DECL vec<L, T, Q> clamp(vec<L, T, Q> const& Texcoord);
170
178 template<length_t L, typename T, qualifier Q>
179 GLM_FUNC_DECL vec<L, T, Q> repeat(vec<L, T, Q> const& Texcoord);
180
188 template<length_t L, typename T, qualifier Q>
189 GLM_FUNC_DECL vec<L, T, Q> mirrorClamp(vec<L, T, Q> const& Texcoord);
190
198 template<length_t L, typename T, qualifier Q>
199 GLM_FUNC_DECL vec<L, T, Q> mirrorRepeat(vec<L, T, Q> const& Texcoord);
200
202}//namespace glm
203
204#include "vector_common.inl"
Core features
GLM_FUNC_DECL GLM_CONSTEXPR genType max(genType x, genType y)
Returns y if x < y; otherwise, it returns x.
GLM_FUNC_DECL GLM_CONSTEXPR genType min(genType x, genType y)
Returns y if y < x; otherwise, it returns x.
GLM_FUNC_DECL GLM_CONSTEXPR genType clamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...
GLM_FUNC_DECL T fmin(T a, T b)
Returns the minimum component-wise values of 2 inputs.
GLM_FUNC_DECL genType repeat(genType const &Texcoord)
Simulate GL_REPEAT OpenGL wrap mode.
GLM_FUNC_DECL genType mirrorRepeat(genType const &Texcoord)
Simulate GL_MIRROR_REPEAT OpenGL wrap mode.
GLM_FUNC_DECL genType fclamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x.
GLM_FUNC_DECL T fmax(T a, T b)
Returns the maximum component-wise values of 2 inputs.
GLM_FUNC_DECL genType mirrorClamp(genType const &Texcoord)
Simulate GL_MIRRORED_REPEAT OpenGL wrap mode.
GLM_EXT_scalar_common