[Commit] tess ChangeLog,1.4,1.5 bentley.5c,1.5,1.6

Carl Worth commit at keithp.com
Wed Jul 7 12:20:11 PDT 2004


Committed by: cworth

Update of /local/src/CVS/tess
In directory home.keithp.com:/tmp/cvs-serv2745

Modified Files:
	ChangeLog bentley.5c 
Log Message:

        * bentley.5c: Add multi test showing several segments with a
        common intersection.
        (bentley_ottman): Fix to skip processing of intersection event if
        two edges are not adjacent in the sweep line.


Index: ChangeLog
===================================================================
RCS file: /local/src/CVS/tess/ChangeLog,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- ChangeLog	7 Jul 2004 18:16:54 -0000	1.4
+++ ChangeLog	7 Jul 2004 19:20:09 -0000	1.5
@@ -1,5 +1,12 @@
 2004-07-07  Carl Worth  <cworth at isi.edu>
 
+	* bentley.5c: Add multi test showing several segments with a
+	common intersection.
+	(bentley_ottman): Fix to skip processing of intersection event if
+	two edges are not adjacent in the sweep line.
+
+2004-07-07  Carl Worth  <cworth at isi.edu>
+
 	* bentley.5c: Add #!/usr/bin/env nickle to top of file.
 
 2004-07-07  Carl Worth  <cworth at isi.edu>

Index: bentley.5c
===================================================================
RCS file: /local/src/CVS/tess/bentley.5c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -d -r1.5 -r1.6
--- bentley.5c	7 Jul 2004 18:16:54 -0000	1.5
+++ bentley.5c	7 Jul 2004 19:20:09 -0000	1.6
@@ -435,6 +435,10 @@
 	case Intersect:
 	    EdgePtr e1, e2, left, right;
 
+	    /* skip this intersection if its edges are not adjacent */
+	    if (event.elt->e1.elt->next != event.elt->e2)
+		break;
+
 	    intersection_count++;
 
 	    result[dim(result)] = (Edge) {
@@ -590,6 +594,18 @@
 	    { top = { x = 5, y = 2}, bottom = { x = 5, y = 6}},
 	    { top = { x = 2, y = 4}, bottom = { x = 8, y = 5}}
 	}
+    },
+    {
+	name = "multi",
+	desc = "Several segments with a common intersection point",
+	edges = {
+	    { top = { x = 1, y = 2}, bottom = { x = 5, y = 4} },
+	    { top = { x = 1, y = 1}, bottom = { x = 5, y = 5} },
+	    { top = { x = 2, y = 1}, bottom = { x = 4, y = 5} },
+	    { top = { x = 4, y = 1}, bottom = { x = 2, y = 5} },
+	    { top = { x = 5, y = 1}, bottom = { x = 1, y = 5} },
+	    { top = { x = 5, y = 2}, bottom = { x = 1, y = 4} }
+	}
     }
 };
 




More information about the Commit mailing list