diff options
author | Keith Packard <keithp@keithp.com> | 2016-06-16 23:59:06 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2016-06-16 23:59:06 -0700 |
commit | 2a1b7c6c509d4d19de21abf02b63aeacba269d13 (patch) | |
tree | 5145d3563cd98141788a6b003f35ebcfeb824f2c /altoslib | |
parent | f7e2f7f430e612c682bf55478860054ce94b995f (diff) |
altoslib: Add null constructors to AltosQuaternion and AltosRotation
These will be used in the reflection-based JSON code
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib')
-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; |