From ab49d62c0db139cab51c6f41106286ae2956ed7f Mon Sep 17 00:00:00 2001 From: Jessica Syder Date: Mon, 25 Sep 2017 12:17:37 +1300 Subject: [PATCH] Map can be zoomed in / out at all times. - map can be zoomed when object is not selected #story[1312] --- .../src/main/java/visualiser/layout/View3D.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/racevisionGame/src/main/java/visualiser/layout/View3D.java b/racevisionGame/src/main/java/visualiser/layout/View3D.java index 30502203..efe8bda2 100644 --- a/racevisionGame/src/main/java/visualiser/layout/View3D.java +++ b/racevisionGame/src/main/java/visualiser/layout/View3D.java @@ -204,7 +204,7 @@ public class View3D extends Pane { /** * Stop camera from following the last selected subject */ - private void untrackSubject() { + public void untrackSubject() { if(target.get() != null) { trackBoat.stop(); target.setValue(null); @@ -215,7 +215,7 @@ public class View3D extends Pane { * Set camera to follow the selected subject * @param subject to track */ - private void trackSubject(Subject3D subject) { + public void trackSubject(Subject3D subject) { target.set(subject); this.trackBoat = new AnimationTimer() { @@ -265,17 +265,18 @@ public class View3D extends Pane { * @param delta amount to change distance by */ public void updateDistance(double delta) { - double distance = -this.distance.getZ() + delta; - - if(distance <= ZOOM_IN_LIMIT) { + double newDistance = -this.distance.getZ() + delta; + if (target.get() == null){ + setDistance(newDistance); + } else if(newDistance <= ZOOM_IN_LIMIT) { setDistance(ZOOM_IN_LIMIT); - } else if (distance > ZOOM_OUT_LIMIT){ + } else if (newDistance > ZOOM_OUT_LIMIT){ untrackSubject(); setDistance(1050); updatePivot(new Translate(250, 0, 210)); setYaw(0); } else { - setDistance(distance); + setDistance(newDistance); } adjustPitchForZoom(); adjustScaleForZoom(); @@ -294,7 +295,6 @@ public class View3D extends Pane { itemScale = 0.1; // if zoomed right out } else if (itemScale > 1) { - System.out.println("over 1"); itemScale = 1; }