X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosQuaternion.java;h=98c2fe51322851e5b7fb1e5b95723fc173f4655e;hb=7175774c4f60ed3efd54417f2035b50ea0108c7b;hp=af9eb47558c701ad273753934826a4f6a5638854;hpb=b1a90adac9f6e2a609ce1ccd6749462bb5c9adbe;p=fw%2Faltos diff --git a/altoslib/AltosQuaternion.java b/altoslib/AltosQuaternion.java index af9eb475..98c2fe51 100644 --- a/altoslib/AltosQuaternion.java +++ b/altoslib/AltosQuaternion.java @@ -17,7 +17,7 @@ package org.altusmetrum.altoslib_11; -public class AltosQuaternion implements AltosHashable { +public class AltosQuaternion implements AltosJsonable { double r; /* real bit */ double x, y, z; /* imaginary bits */ @@ -115,10 +115,17 @@ public class AltosQuaternion implements AltosHashable { } public AltosQuaternion(AltosQuaternion q) { - this.r = q.r; - this.x = q.x; - this.y = q.y; - this.z = q.z; + r = q.r; + x = q.x; + y = q.y; + z = q.z; + } + + public AltosQuaternion() { + r = 1; + x = 0; + y = 0; + z = 0; } static public AltosQuaternion vector(double x, double y, double z) { @@ -148,23 +155,23 @@ public class AltosQuaternion implements AltosHashable { c_x * c_y * s_z - s_x * s_y * c_z); } - public AltosHashSet hashSet() { - AltosHashSet h = new AltosHashSet(); + public AltosJson json() { + AltosJson j = new AltosJson(); - h.putDouble("r", r); - h.putDouble("x", x); - h.putDouble("y", y); - h.putDouble("z", z); - return h; + j.put("r", r); + j.put("x", x); + j.put("y", y); + j.put("z", z); + return j; } - public AltosQuaternion(AltosHashSet h) { - if (h == null) + public AltosQuaternion(AltosJson j) { + if (j == null) return; - r = h.getDouble("r", 1); - x = h.getDouble("x", 0); - y = h.getDouble("y", 0); - z = h.getDouble("z", 0); + r = j.get_double("r", 1); + x = j.get_double("x", 0); + y = j.get_double("y", 0); + z = j.get_double("z", 0); } }