1
2
3
4
5
6
7 package net.sourceforge.kamiwaai.geometricalgebra;
8 import junit.framework.TestCase;
9 /***
10 * @author Administrator
11 *
12 * TODO To change the template for this generated type comment go to Window -
13 * Preferences - Java - Code Generation - Code and Comments
14 */
15 public class ConformalPointTest extends TestCase {
16 PointC point1 = new PointC();
17 PointC point2 = new PointC();
18 public void testEquals() {
19 assertTrue(point1.equals(point2));
20 }
21 public void testPointMV(){
22 assertEquals(MultiVectors.nbar(), point1.getMultiVector());
23 }
24 public void testPointConstructor(){
25 point1.sete1(7.0);
26 point1.sete2(9.0);
27 point1.sete3(13.0);
28 assertEquals(new PointC(7.0, 9.0, 13.0), point1);
29 }
30 public void testSete1(){
31 ComplexNumber[] c1234 = {new ComplexNumber(24.5,0.0) ,ComplexNumber.ZERO , ComplexNumber.ZERO ,ComplexNumber.ZERO };
32 ComplexNumber[] c5678 = {ComplexNumber.ZERO ,new ComplexNumber(0.0,-7.0) ,ComplexNumber.ZERO ,ComplexNumber.ZERO };
33 ComplexQuat cqn = new ComplexQuat(c1234);
34 ComplexQuat cqnnb = new ComplexQuat(c5678);
35 ComplexQuat[] cq = {ComplexQuat.ZERO, cqn, ComplexQuat.ONE, cqnnb};
36 MultiVector mv = new MultiVector(cq);
37 point1.sete1(7.0);
38 assertEquals(point1, new PointC(mv));
39 }
40 public void testSete2(){
41 ComplexNumber[] c1234 = {new ComplexNumber(40.5,0.0) ,ComplexNumber.ZERO , ComplexNumber.ZERO ,ComplexNumber.ZERO };
42 ComplexNumber[] c5678 = {ComplexNumber.ZERO ,ComplexNumber.ZERO ,new ComplexNumber(0.0,-9.0) ,ComplexNumber.ZERO };
43 ComplexQuat cqn = new ComplexQuat(c1234);
44 ComplexQuat cqnnb = new ComplexQuat(c5678);
45 ComplexQuat[] cq = {ComplexQuat.ZERO, cqn, ComplexQuat.ONE, cqnnb};
46 MultiVector mv = new MultiVector(cq);
47 point1.sete2(9.0);
48 assertEquals(point1, new PointC(mv));
49 }
50 public void testSete3(){
51 ComplexNumber[] c1234 = {new ComplexNumber(84.5,0.0) ,ComplexNumber.ZERO , ComplexNumber.ZERO ,ComplexNumber.ZERO };
52 ComplexNumber[] c5678 = {ComplexNumber.ZERO ,ComplexNumber.ZERO ,ComplexNumber.ZERO ,new ComplexNumber(0.0,-13.0) };
53 ComplexQuat cqn = new ComplexQuat(c1234);
54 ComplexQuat cqnnb = new ComplexQuat(c5678);
55 ComplexQuat[] cq = {ComplexQuat.ZERO, cqn, ComplexQuat.ONE, cqnnb};
56 MultiVector mv = new MultiVector(cq);
57 point1.sete3(13.0);
58 assertEquals(point1, new PointC(mv));
59 }
60 public void testCoord(){
61 point1.sete1(7.0);
62 point1.sete2(9.0);
63 point1.sete3(13.0);
64 double[] result = {7.0, 9.0, 13.0};
65 assertEquals(point1.coord()[0], result[0], .0001);
66 assertEquals(point1.coord()[1], result[1], .0001);
67 assertEquals(point1.coord()[2], result[2], .0001);
68 }
69 public void testPPDistance(){
70 point1.sete1(7.0);
71 point1.sete2(9.0);
72 point1.sete3(13.0);
73 assertEquals(point1.ppdistance(point2), Math.sqrt(7.0*7.0 + 9.0*9.0 + 13.0*13.0), 0.00000000001);
74 }
75 public static void main(String args[]){
76 PointC point1 = new PointC();
77 PointC point2 = new PointC();
78 System.out.println(point1);
79 point1.sete1(7);
80 point1.sete2(9);
81 point1.sete3(13);
82 double[] result = point1.coord();
83 for (int i = 0; i < result.length; i++) {
84
85 }
86
87
88 System.out.println(point1);
89 PointC point3 = new PointC(7.0, 9.0, 13.0);
90 System.out.println(point3);
91 }
92 }