diff options
-rw-r--r-- | altoslib/AltosQuaternion.java | 15 | ||||
-rw-r--r-- | altoslib/AltosRotation.java | 12 |
2 files changed, 19 insertions, 8 deletions
diff --git a/altoslib/AltosQuaternion.java b/altoslib/AltosQuaternion.java index 1b4a9419..98c2fe51 100644 --- a/altoslib/AltosQuaternion.java +++ b/altoslib/AltosQuaternion.java @@ -115,10 +115,17 @@ public class AltosQuaternion implements AltosJsonable { } 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) { diff --git a/altoslib/AltosRotation.java b/altoslib/AltosRotation.java index 321a0f30..6db0b541 100644 --- a/altoslib/AltosRotation.java +++ b/altoslib/AltosRotation.java @@ -48,14 +48,18 @@ public class AltosRotation implements AltosJsonable { rotation = up.vectors_to_rotation(orient); } - public AltosJson json() { - return rotation.json(); - } - public AltosRotation(AltosJson j) { rotation = new AltosQuaternion(j); } + public AltosRotation() { + rotation = new AltosQuaternion(); + } + + public AltosJson json() { + return rotation.json(); + } + public static AltosRotation fromJson(AltosJson j, AltosRotation def) { if (j == null) return def; |