Thread: [Bprocessor-commit] model/src/net/sourceforge/bprocessor/model/test EdgeTest.java, NONE, 1.1 AllTes
Status: Pre-Alpha
Brought to you by:
henryml
From: rimestad <rim...@us...> - 2006-08-28 14:48:34
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/test In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv20236/src/net/sourceforge/bprocessor/model/test Modified Files: AllTests.java Added Files: EdgeTest.java Log Message: Added offset method to Edge and made tests for it --- NEW FILE: EdgeTest.java --- //--------------------------------------------------------------------------------- // $Id: EdgeTest.java,v 1.1 2006/08/28 14:48:25 rimestad Exp $ // // Copyright (c) 2005 The BProcessor Team (http://bprocessor.sourceforge.net) // Released under the Lesser GNU Public License v2.1 //--------------------------------------------------------------------------------- package net.sourceforge.bprocessor.model.test; import java.util.ArrayList; import java.util.List; import net.sourceforge.bprocessor.model.Edge; import net.sourceforge.bprocessor.model.Surface; import net.sourceforge.bprocessor.model.Vertex; import junit.framework.TestCase; /** * A test class for Edge */ public class EdgeTest extends TestCase { /** * Test the offset method in edge */ public void testOffset1() { Vertex v1 = new Vertex(0, 0, 0); Vertex v2 = new Vertex(3, 0, 0); Vertex v3 = new Vertex(3, 3, 0); Vertex v4 = new Vertex(0, 3, 0); Edge e1 = new Edge(v1, v2); Edge e2 = new Edge(v2, v3); Edge e3 = new Edge(v3, v4); Edge e4 = new Edge(v4, v1); ArrayList edges = new ArrayList(); edges.add(e1); edges.add(e2); edges.add(e3); edges.add(e4); Surface s = new Surface(edges); List offset = Edge.offset(edges, s, -1); Edge e = (Edge)offset.get(0); assertEquals(2.0, e.getFrom().getX(), 0.0001); assertEquals(1.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(1); assertEquals(2.0, e.getFrom().getX(), 0.0001); assertEquals(2.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(2); assertEquals(1.0, e.getFrom().getX(), 0.0001); assertEquals(2.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(3); assertEquals(1.0, e.getFrom().getX(), 0.0001); assertEquals(1.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); } /** * Test the offset method in edge with from to mixed up */ public void testOffset2() { Vertex v1 = new Vertex(0, 0, 0); Vertex v2 = new Vertex(3, 0, 0); Vertex v3 = new Vertex(3, 3, 0); Vertex v4 = new Vertex(0, 3, 0); Edge e1 = new Edge(v1, v2); Edge e2 = new Edge(v3, v2); Edge e3 = new Edge(v3, v4); Edge e4 = new Edge(v1, v4); ArrayList edges = new ArrayList(); edges.add(e1); edges.add(e2); edges.add(e3); edges.add(e4); Surface s = new Surface(edges); List offset = Edge.offset(edges, s, -1); Edge e = (Edge)offset.get(0); assertEquals(2.0, e.getFrom().getX(), 0.0001); assertEquals(1.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(1); assertEquals(2.0, e.getTo().getX(), 0.0001); assertEquals(2.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); e = (Edge)offset.get(2); assertEquals(1.0, e.getFrom().getX(), 0.0001); assertEquals(2.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(3); assertEquals(1.0, e.getTo().getX(), 0.0001); assertEquals(1.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); } /** * Test offset with different offsets */ public void testOffset3() { Vertex v1 = new Vertex(0, 0, 0); Vertex v2 = new Vertex(3, 0, 0); Vertex v3 = new Vertex(3, 3, 0); Vertex v4 = new Vertex(0, 3, 0); Edge e1 = new Edge(v1, v2); Edge e2 = new Edge(v2, v3); Edge e3 = new Edge(v3, v4); Edge e4 = new Edge(v4, v1); ArrayList edges = new ArrayList(); edges.add(e1); edges.add(e2); edges.add(e3); edges.add(e4); Surface s = new Surface(edges); // offset 3 List offset = Edge.offset(edges, s, 3); Edge e = (Edge)offset.get(0); assertEquals(6.0, e.getFrom().getX(), 0.0001); assertEquals(-3.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(2); assertEquals(-3.0, e.getFrom().getX(), 0.0001); assertEquals(6.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); // offset 6 offset = Edge.offset(edges, s, 6); e = (Edge)offset.get(1); assertEquals(9.0, e.getFrom().getX(), 0.0001); assertEquals(9.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); e = (Edge)offset.get(3); assertEquals(-6.0, e.getFrom().getX(), 0.0001); assertEquals(-6.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); } /** * Test offset with onle some edges */ public void testOffset4() { Vertex v1 = new Vertex(0, 0, 0); Vertex v2 = new Vertex(3, 0, 0); Vertex v3 = new Vertex(3, 3, 0); Vertex v4 = new Vertex(0, 3, 0); Edge e1 = new Edge(v1, v2); Edge e2 = new Edge(v2, v3); Edge e3 = new Edge(v3, v4); Edge e4 = new Edge(v4, v1); ArrayList edges = new ArrayList(); edges.add(e1); edges.add(e2); edges.add(e3); edges.add(e4); Surface s = new Surface(edges); // offset with first and third edge List which = new ArrayList(); which.add(e1); which.add(e3); List offset = Edge.offset(which, s, -1); Edge e = (Edge)offset.get(1); assertEquals(0.0, e.getFrom().getX(), 0.0001); assertEquals(2.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); assertEquals(3.0, e.getTo().getX(), 0.0001); assertEquals(2.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); e = (Edge)offset.get(0); assertEquals(3.0, e.getFrom().getX(), 0.0001); assertEquals(1.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); assertEquals(0.0, e.getTo().getX(), 0.0001); assertEquals(1.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); } /** * Test offset with onle some edges advanced */ public void testOffset5() { Vertex v1 = new Vertex(0, 0, 0); Vertex v2 = new Vertex(3, 0, 0); Vertex v3 = new Vertex(4, 1, 0); Vertex v4 = new Vertex(4, 2, 0); Vertex v5 = new Vertex(3, 3, 0); Vertex v6 = new Vertex(0, 3, 0); Vertex v7 = new Vertex(-1, 2, 0); Vertex v8 = new Vertex(-1, 1, 0); Edge e1 = new Edge(v1, v2); Edge e2 = new Edge(v2, v3); Edge e3 = new Edge(v3, v4); Edge e4 = new Edge(v4, v5); Edge e5 = new Edge(v5, v6); Edge e6 = new Edge(v6, v7); Edge e7 = new Edge(v7, v8); Edge e8 = new Edge(v8, v1); ArrayList edges = new ArrayList(); edges.add(e1); edges.add(e2); edges.add(e3); edges.add(e4); edges.add(e5); edges.add(e6); edges.add(e7); edges.add(e8); Surface s = new Surface(edges); // offset with first and third edge List which = new ArrayList(); which.add(e1); which.add(e5); List offset = Edge.offset(which, s, -1); Edge e = (Edge)offset.get(1); assertEquals(-1.0, e.getFrom().getX(), 0.0001); assertEquals(2.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); assertEquals(4.0, e.getTo().getX(), 0.0001); assertEquals(2.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); e = (Edge)offset.get(0); assertEquals(4.0, e.getFrom().getX(), 0.0001); assertEquals(1.0, e.getFrom().getY(), 0.0001); assertEquals(0.0, e.getFrom().getZ(), 0.0001); assertEquals(-1.0, e.getTo().getX(), 0.0001); assertEquals(1.0, e.getTo().getY(), 0.0001); assertEquals(0.0, e.getTo().getZ(), 0.0001); } } Index: AllTests.java =================================================================== RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/test/AllTests.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** AllTests.java 12 Jul 2006 12:19:49 -0000 1.2 --- AllTests.java 28 Aug 2006 14:48:25 -0000 1.3 *************** *** 23,26 **** --- 23,27 ---- //$JUnit-BEGIN$ suite.addTestSuite(LineTest.class); + suite.addTestSuite(EdgeTest.class); //$JUnit-END$ return suite; |