From 2e77183461e11521a37f34e0c01581df762413fc Mon Sep 17 00:00:00 2001
From: Tavian Barnes <tavianator@gmail.com>
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