17 #include "../geometric.hpp"
18 #include "../gtx/quaternion.hpp"
20 #ifndef GLM_ENABLE_EXPERIMENTAL
21 # error "GLM: GLM_GTX_norm is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it."
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
25 # pragma message("GLM: GLM_GTX_norm extension included")
35 template<length_t L,
typename T, qualifier Q>
36 GLM_FUNC_DECL T
length2(vec<L, T, Q>
const& x);
40 template<length_t L,
typename T, qualifier Q>
41 GLM_FUNC_DECL T
distance2(vec<L, T, Q>
const& p0, vec<L, T, Q>
const& p1);
45 template<
typename T, qualifier Q>
46 GLM_FUNC_DECL T
l1Norm(vec<3, T, Q>
const& x, vec<3, T, Q>
const& y);
50 template<
typename T, qualifier Q>
51 GLM_FUNC_DECL T
l1Norm(vec<3, T, Q>
const& v);
55 template<
typename T, qualifier Q>
56 GLM_FUNC_DECL T
l2Norm(vec<3, T, Q>
const& x, vec<3, T, Q>
const& y);
60 template<
typename T, qualifier Q>
61 GLM_FUNC_DECL T
l2Norm(vec<3, T, Q>
const& x);
65 template<
typename T, qualifier Q>
66 GLM_FUNC_DECL T
lxNorm(vec<3, T, Q>
const& x, vec<3, T, Q>
const& y,
unsigned int Depth);
70 template<
typename T, qualifier Q>
71 GLM_FUNC_DECL T
lxNorm(vec<3, T, Q>
const& x,
unsigned int Depth);
GLM_FUNC_DECL T l2Norm(vec< 3, T, Q > const &x)
Returns the L2 norm of v.
GLM_FUNC_DECL T lxNorm(vec< 3, T, Q > const &x, unsigned int Depth)
Returns the L norm of v.
GLM_FUNC_DECL T length2(vec< L, T, Q > const &x)
Returns the squared length of x.
GLM_FUNC_DECL T l1Norm(vec< 3, T, Q > const &v)
Returns the L1 norm of v.
GLM_FUNC_DECL T distance2(vec< L, T, Q > const &p0, vec< L, T, Q > const &p1)
Returns the squared distance between p0 and p1, i.e., length2(p0 - p1).