X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Frasterize;a=blobdiff_plain;f=vec.h;h=614e31dfec4c0e68bdbcb5b08ae0be7399ef4ef7;hp=2c1269dccc88eb567e1962ecbcda2d8e5d082f56;hb=b0a8ea303e942930350bf85c860afc969442c7a4;hpb=c875478cdd823c7df8fdc859941bd9e5948c9315 diff --git a/vec.h b/vec.h index 2c1269d..614e31d 100644 --- a/vec.h +++ b/vec.h @@ -106,6 +106,21 @@ bool vec_isequal(vec_t a, vec_t b) return (a.x == b.x && a.y == b.y && a.z == b.z && a.w == b.w); } +/* + * Determine whether or not two vectors are mostly equal. + */ +INLINE_MAYBE +bool vec_isequal2(vec_t a, vec_t b, scal_t epsilon) +{ + return scal_isequal2(a.x, b.x, epsilon) && + scal_isequal2(a.y, b.y, epsilon) && + scal_isequal2(a.z, b.z, epsilon) && + scal_isequal2(a.w, b.w, epsilon); +} + +/* + * Determine if one vector is "less than" another, for purposes of sorting. + */ INLINE_MAYBE int vec_compare(vec_t a, vec_t b) {