1 package net.sf.openrocket.util;
4 import static org.junit.Assert.assertEquals;
7 public class TransformationTest {
9 public void oldMainTest() {
12 t = new Transformation();
14 Coordinate a = t.transform( new Coordinate(1,0,0) );
15 assertEquals( new Coordinate(1,0,0), a );
16 a = t.transform( new Coordinate(0,1,0) );
17 assertEquals( new Coordinate(0,1,0), a );
18 a = t.transform( new Coordinate(0,0,1) );
19 assertEquals( new Coordinate(0,0,1), a );
22 t = new Transformation(1,2,3);
24 Coordinate a = t.transform( new Coordinate(1,0,0) );
25 assertEquals( new Coordinate(2,2,3), a );
26 a = t.transform( new Coordinate(0,1,0) );
27 assertEquals( new Coordinate(1,3,3), a );
28 a = t.transform( new Coordinate(0,0,1) );
29 assertEquals( new Coordinate(1,2,4), a );
33 t = new Transformation(new Coordinate(2,3,4));
35 Coordinate a = t.transform( new Coordinate(1,0,0) );
36 assertEquals( new Coordinate(3,3,4), a );
37 a = t.transform( new Coordinate(0,1,0) );
38 assertEquals( new Coordinate(2,4,4), a );
39 a = t.transform( new Coordinate(0,0,1) );
40 assertEquals( new Coordinate(2,3,5), a );
43 // FIXME - is this correct? shouldn't a rotation preserve coordinate length?
44 t = Transformation.rotate_y(0.01);
46 Coordinate a = t.transform( new Coordinate(1,0,0) );
47 // we need to test individual coordinates due to error.
48 assertEquals( 1, a.x, .001);
49 assertEquals( 0, a.y, .001);
50 assertEquals( -.01, a.z, .001);
51 a = t.transform( new Coordinate(0,1,0) );
52 assertEquals( new Coordinate(0,1,0), a );
53 a = t.transform( new Coordinate(0,0,1) );
54 // we need to test individual coordinates due to error.
55 assertEquals( .01, a.x, .001);
56 assertEquals( 0, a.y, .001);
57 assertEquals( 1, a.z, .001);
60 t = new Transformation(-1,0,0);
61 t = t.applyTransformation(Transformation.rotate_y(0.01));
62 t = t.applyTransformation(new Transformation(1,0,0));
64 Coordinate a = t.transform( new Coordinate(1,0,0) );
65 // we need to test individual coordinates due to error.
66 assertEquals( 1, a.x, .001);
67 assertEquals( 0, a.y, .001);
68 assertEquals( -.02, a.z, .001);
69 a = t.transform( new Coordinate(0,1,0) );
70 assertEquals( 0, a.x, .001);
71 assertEquals( 1, a.y, .001);
72 assertEquals( -.01, a.z, .001);
73 a = t.transform( new Coordinate(0,0,1) );
74 // we need to test individual coordinates due to error.
75 assertEquals( .01, a.x, .001);
76 assertEquals( 0, a.y, .001);
77 assertEquals( .99, a.z, .001);