0.9.9 API documentation
vector_common.hpp
Go to the documentation of this file.
1
13
14#pragma once
15
16// Dependency:
17#include "../ext/scalar_common.hpp"
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"
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)
Return the maximum component-wise values of 4 inputs.
GLM_FUNC_DECL vec< L, T, Q > mirrorRepeat(vec< L, T, Q > const &Texcoord)
Simulate GL_MIRROR_REPEAT OpenGL wrap mode.
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)
Returns y if y < x; otherwise, it returns x.
GLM_FUNC_DECL vec< L, T, Q > repeat(vec< L, T, Q > const &Texcoord)
Simulate GL_REPEAT OpenGL wrap mode.
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)
Return the minimum component-wise values of 4 inputs.
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)
Returns min(max(x, minVal), maxVal) for each component in x.
GLM_FUNC_DECL vec< L, T, Q > mirrorClamp(vec< L, T, Q > const &Texcoord)
Simulate GL_MIRRORED_REPEAT OpenGL wrap mode.
GLM_FUNC_DECL vec< L, T, Q > clamp(vec< L, T, Q > const &Texcoord)
Simulate GL_CLAMP OpenGL wrap mode.
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)
Returns y if x < y; otherwise, it returns x.