From 2e77183461e11521a37f34e0c01581df762413fc Mon Sep 17 00:00:00 2001 From: Tavian Barnes Date: Fri, 28 Oct 2011 15:46:30 -0400 Subject: Use Rouillier and Zimmerman's version of the Uspensky algorithm. --- libdimension/dimension/geometry.h | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'libdimension/dimension') diff --git a/libdimension/dimension/geometry.h b/libdimension/dimension/geometry.h index d2ad362..1248e01 100644 --- a/libdimension/dimension/geometry.h +++ b/libdimension/dimension/geometry.h @@ -124,12 +124,17 @@ dmnsn_degrees(double radians) return radians*45.0/atan(1.0); } -/** Return the sign bit of a scalar. */ +/** Return the sign of a scalar. */ DMNSN_INLINE int -dmnsn_signbit(double n) +dmnsn_sign(double n) { - /* Guarantee a 1 or 0 return, to allow testing two signs for equality */ - return signbit(n) ? 1 : 0; + if (n > 0.0) { + return 1; + } else if (n < 0.0) { + return -1; + } else { + return 0; + } } /* Shorthand for vector/matrix construction */ -- cgit v1.2.3