about summary refs log tree commit diff
path: root/converter/other/pamtosvg/epsilon.c
diff options
context:
space:
mode:
authorgiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2023-09-08 03:24:19 +0000
committergiraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8>2023-09-08 03:24:19 +0000
commit18d2df35534306c1be8c76df9220cd6d7f0275c8 (patch)
tree7cc8d4f966a5e1799aeb06fd287228c7be43552b /converter/other/pamtosvg/epsilon.c
parent67748e0e839d434cde6207cdc80b3e2a6f6e9097 (diff)
downloadnetpbm-mirror-18d2df35534306c1be8c76df9220cd6d7f0275c8.tar.gz
netpbm-mirror-18d2df35534306c1be8c76df9220cd6d7f0275c8.tar.xz
netpbm-mirror-18d2df35534306c1be8c76df9220cd6d7f0275c8.zip
cleanup
git-svn-id: http://svn.code.sf.net/p/netpbm/code/trunk@4639 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'converter/other/pamtosvg/epsilon.c')
-rw-r--r--converter/other/pamtosvg/epsilon.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/converter/other/pamtosvg/epsilon.c b/converter/other/pamtosvg/epsilon.c
new file mode 100644
index 00000000..d0c06560
--- /dev/null
+++ b/converter/other/pamtosvg/epsilon.c
@@ -0,0 +1,19 @@
+/* epsilon-equal.c: define a error resist compare. */
+
+#include <math.h>
+
+#include "epsilon.h"
+
+/* Numerical errors sometimes make a floating point number just slightly
+   larger or smaller than its true value.  When it matters, we need to
+   compare with some tolerance, REAL_EPSILON, defined in kbase.h.  */
+
+bool
+epsilon_equal(float const v1,
+              float const v2) {
+
+    return
+        v1 == v2		       /* Usually they'll be exactly equal, anyway.  */
+        || fabs(v1 - v2) <= REAL_EPSILON;
+}
+