JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / bin / javajs / util / T3d.js
1 Clazz.declarePackage ("javajs.util");\r
2 Clazz.load (null, "javajs.util.T3d", ["java.lang.Double"], function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this.x = 0;\r
5 this.y = 0;\r
6 this.z = 0;\r
7 Clazz.instantialize (this, arguments);\r
8 }, javajs.util, "T3d", null, java.io.Serializable);\r
9 Clazz.makeConstructor (c$, \r
10 function () {\r
11 });\r
12 Clazz.defineMethod (c$, "set", \r
13 function (x, y, z) {\r
14 this.x = x;\r
15 this.y = y;\r
16 this.z = z;\r
17 }, "~N,~N,~N");\r
18 Clazz.defineMethod (c$, "setA", \r
19 function (t) {\r
20 this.x = t[0];\r
21 this.y = t[1];\r
22 this.z = t[2];\r
23 }, "~A");\r
24 Clazz.defineMethod (c$, "setT", \r
25 function (t1) {\r
26 this.x = t1.x;\r
27 this.y = t1.y;\r
28 this.z = t1.z;\r
29 }, "javajs.util.T3d");\r
30 Clazz.defineMethod (c$, "add2", \r
31 function (t1, t2) {\r
32 this.x = t1.x + t2.x;\r
33 this.y = t1.y + t2.y;\r
34 this.z = t1.z + t2.z;\r
35 }, "javajs.util.T3d,javajs.util.T3d");\r
36 Clazz.defineMethod (c$, "add", \r
37 function (t1) {\r
38 this.x += t1.x;\r
39 this.y += t1.y;\r
40 this.z += t1.z;\r
41 }, "javajs.util.T3d");\r
42 Clazz.defineMethod (c$, "sub2", \r
43 function (t1, t2) {\r
44 this.x = t1.x - t2.x;\r
45 this.y = t1.y - t2.y;\r
46 this.z = t1.z - t2.z;\r
47 }, "javajs.util.T3d,javajs.util.T3d");\r
48 Clazz.defineMethod (c$, "sub", \r
49 function (t1) {\r
50 this.x -= t1.x;\r
51 this.y -= t1.y;\r
52 this.z -= t1.z;\r
53 }, "javajs.util.T3d");\r
54 Clazz.defineMethod (c$, "scale", \r
55 function (s) {\r
56 this.x *= s;\r
57 this.y *= s;\r
58 this.z *= s;\r
59 }, "~N");\r
60 Clazz.defineMethod (c$, "scaleAdd", \r
61 function (s, t1, t2) {\r
62 this.x = s * t1.x + t2.x;\r
63 this.y = s * t1.y + t2.y;\r
64 this.z = s * t1.z + t2.z;\r
65 }, "~N,javajs.util.T3d,javajs.util.T3d");\r
66 Clazz.overrideMethod (c$, "hashCode", \r
67 function () {\r
68 var xbits = javajs.util.T3d.doubleToLongBits0 (this.x);\r
69 var ybits = javajs.util.T3d.doubleToLongBits0 (this.y);\r
70 var zbits = javajs.util.T3d.doubleToLongBits0 (this.z);\r
71 return (xbits ^ (xbits >> 32) ^ ybits ^ (ybits >> 32) ^ zbits ^ (zbits >> 32));\r
72 });\r
73 c$.doubleToLongBits0 = Clazz.defineMethod (c$, "doubleToLongBits0", \r
74 function (d) {\r
75 return (d == 0 ? 0 : Double.doubleToLongBits (d));\r
76 }, "~N");\r
77 Clazz.overrideMethod (c$, "equals", \r
78 function (t1) {\r
79 if (!(Clazz.instanceOf (t1, javajs.util.T3d))) return false;\r
80 var t2 = t1;\r
81 return (this.x == t2.x && this.y == t2.y && this.z == t2.z);\r
82 }, "~O");\r
83 Clazz.overrideMethod (c$, "toString", \r
84 function () {\r
85 return "{" + this.x + ", " + this.y + ", " + this.z + "}";\r
86 });\r
87 });\r