1 KB、35行 生 Blame 履歴
1namespace glm
2{
3 template<typename T, qualifier Q>
4 GLM_FUNC_QUALIFIER vec<4, bool, Q> equal(qua<T, Q> const& x, qua<T, Q> const& y)
5 {
6 vec<4, bool, Q> Result;
7 for(length_t i = 0; i < x.length(); ++i)
8 Result[i] = x[i] == y[i];
9 return Result;
10 }
11
12 template<typename T, qualifier Q>
13 GLM_FUNC_QUALIFIER vec<4, bool, Q> equal(qua<T, Q> const& x, qua<T, Q> const& y, T epsilon)
14 {
15 vec<4, T, Q> v(x.x - y.x, x.y - y.y, x.z - y.z, x.w - y.w);
16 return lessThan(abs(v), vec<4, T, Q>(epsilon));
17 }
18
19 template<typename T, qualifier Q>
20 GLM_FUNC_QUALIFIER vec<4, bool, Q> notEqual(qua<T, Q> const& x, qua<T, Q> const& y)
21 {
22 vec<4, bool, Q> Result;
23 for(length_t i = 0; i < x.length(); ++i)
24 Result[i] = x[i] != y[i];
25 return Result;
26 }
27
28 template<typename T, qualifier Q>
29 GLM_FUNC_QUALIFIER vec<4, bool, Q> notEqual(qua<T, Q> const& x, qua<T, Q> const& y, T epsilon)
30 {
31 vec<4, T, Q> v(x.x - y.x, x.y - y.y, x.z - y.z, x.w - y.w);
32 return greaterThanEqual(abs(v), vec<4, T, Q>(epsilon));
33 }
34}//namespace glm
35