]> granicus.if.org Git - poly2tri-c/commitdiff
Add changes according to commit 4f9c0ace716b in poly2tri (C++)
authorBarak Itkin <lightningismyname@gmail.com>
Sun, 3 Jun 2012 19:09:46 +0000 (22:09 +0300)
committerBarak Itkin <lightningismyname@gmail.com>
Sun, 3 Jun 2012 19:14:01 +0000 (22:14 +0300)
poly2tri-c/p2t/common/utils.c

index 78e1c1a21dfdcea864fe6bb26bc914adfda47f3e..dfbdad3087d3f2829ad272b0d819af22042d4066 100644 (file)
@@ -66,6 +66,7 @@ p2t_orient2d (P2tPoint* pa, P2tPoint* pb, P2tPoint* pc)
 gboolean
 p2t_utils_in_scan_area (P2tPoint* pa, P2tPoint* pb, P2tPoint* pc, P2tPoint* pd)
 {
+#if FALSE
   double pdx = pd->x;
   double pdy = pd->y;
   double adx = pa->x - pdx;
@@ -98,4 +99,16 @@ p2t_utils_in_scan_area (P2tPoint* pa, P2tPoint* pb, P2tPoint* pc, P2tPoint* pd)
     }
 
   return TRUE;
+#else
+  gdouble oadc, oadb = (pa->x - pb->x)*(pd->y - pb->y) - (pd->x - pb->x)*(pa->y - pb->y);
+  if (oadb >= EPSILON) {
+    return FALSE;
+  }
+
+  oadc = (pa->x - pc->x)*(pd->y - pc->y) - (pd->x - pc->x)*(pa->y - pc->y);
+  if (oadc <= EPSILON) {
+    return FALSE;
+  }
+  return TRUE;
+#endif
 }