From da8bbc6536ce09635d1f2d3b7d3a4684d70b8c3f Mon Sep 17 00:00:00 2001 From: Recep Aslantas Date: Thu, 18 Jan 2018 16:24:30 +0300 Subject: [PATCH] improve minv and maxv --- include/cglm/vec3.h | 36 ++++++------------------------- include/cglm/vec4.h | 52 ++++++++++----------------------------------- 2 files changed, 18 insertions(+), 70 deletions(-) diff --git a/include/cglm/vec3.h b/include/cglm/vec3.h index f0d9e51..ebcedcf 100644 --- a/include/cglm/vec3.h +++ b/include/cglm/vec3.h @@ -436,20 +436,9 @@ glm_vec_distance(vec3 v1, vec3 v2) { CGLM_INLINE void glm_vec_maxv(vec3 v1, vec3 v2, vec3 dest) { - if (v1[0] > v2[0]) - dest[0] = v1[0]; - else - dest[0] = v2[0]; - - if (v1[1] > v2[1]) - dest[1] = v1[1]; - else - dest[1] = v2[1]; - - if (v1[2] > v2[2]) - dest[2] = v1[2]; - else - dest[2] = v2[2]; + dest[0] = glm_max(v1[0], v2[0]); + dest[1] = glm_max(v1[1], v2[1]); + dest[2] = glm_max(v1[2], v2[2]); } /*! @@ -462,20 +451,9 @@ glm_vec_maxv(vec3 v1, vec3 v2, vec3 dest) { CGLM_INLINE void glm_vec_minv(vec3 v1, vec3 v2, vec3 dest) { - if (v1[0] < v2[0]) - dest[0] = v1[0]; - else - dest[0] = v2[0]; - - if (v1[1] < v2[1]) - dest[1] = v1[1]; - else - dest[1] = v2[1]; - - if (v1[2] < v2[2]) - dest[2] = v1[2]; - else - dest[2] = v2[2]; + dest[0] = glm_min(v1[0], v2[0]); + dest[1] = glm_min(v1[1], v2[1]); + dest[2] = glm_min(v1[2], v2[2]); } /*! @@ -541,7 +519,7 @@ glm_normalize(vec3 v) { * * this is just convenient wrapper * - * @param[in] vec source + * @param[in] v source * @param[out] dest destination */ CGLM_INLINE diff --git a/include/cglm/vec4.h b/include/cglm/vec4.h index 275d49d..e76bfac 100644 --- a/include/cglm/vec4.h +++ b/include/cglm/vec4.h @@ -332,9 +332,9 @@ CGLM_INLINE float glm_vec4_distance(vec4 v1, vec4 v2) { return sqrtf(glm_pow2(v2[0] - v1[0]) - + glm_pow2(v2[1] - v1[1]) - + glm_pow2(v2[2] - v1[2]) - + glm_pow2(v2[3] - v1[3])); + + glm_pow2(v2[1] - v1[1]) + + glm_pow2(v2[2] - v1[2]) + + glm_pow2(v2[3] - v1[3])); } /*! @@ -347,25 +347,10 @@ glm_vec4_distance(vec4 v1, vec4 v2) { CGLM_INLINE void glm_vec4_maxv(vec4 v1, vec4 v2, vec4 dest) { - if (v1[0] > v2[0]) - dest[0] = v1[0]; - else - dest[0] = v2[0]; - - if (v1[1] > v2[1]) - dest[1] = v1[1]; - else - dest[1] = v2[1]; - - if (v1[2] > v2[2]) - dest[2] = v1[2]; - else - dest[2] = v2[2]; - - if (v1[3] > v2[3]) - dest[3] = v1[3]; - else - dest[3] = v2[3]; + dest[0] = glm_max(v1[0], v2[0]); + dest[1] = glm_max(v1[1], v2[1]); + dest[2] = glm_max(v1[2], v2[2]); + dest[3] = glm_max(v1[3], v2[3]); } /*! @@ -378,25 +363,10 @@ glm_vec4_maxv(vec4 v1, vec4 v2, vec4 dest) { CGLM_INLINE void glm_vec4_minv(vec4 v1, vec4 v2, vec4 dest) { - if (v1[0] < v2[0]) - dest[0] = v1[0]; - else - dest[0] = v2[0]; - - if (v1[1] < v2[1]) - dest[1] = v1[1]; - else - dest[1] = v2[1]; - - if (v1[2] < v2[2]) - dest[2] = v1[2]; - else - dest[2] = v2[2]; - - if (v1[3] < v2[3]) - dest[3] = v1[3]; - else - dest[3] = v2[3]; + dest[0] = glm_min(v1[0], v2[0]); + dest[1] = glm_min(v1[1], v2[1]); + dest[2] = glm_min(v1[2], v2[2]); + dest[3] = glm_min(v1[3], v2[3]); } #endif /* cglm_vec4_h */