From be1aac2c6669e981deb9f9b22e6710bc6f36233d Mon Sep 17 00:00:00 2001 From: Daniel_M_Williams Date: Fri, 21 Dec 2018 14:40:02 -0500 Subject: [PATCH 1/2] [fixes #502] Adjust RocketFigure Bounds to include negative-coordinate components --- swing/src/net/sf/openrocket/gui/scalefigure/RocketFigure.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/swing/src/net/sf/openrocket/gui/scalefigure/RocketFigure.java b/swing/src/net/sf/openrocket/gui/scalefigure/RocketFigure.java index 49741d551..2f6fab230 100644 --- a/swing/src/net/sf/openrocket/gui/scalefigure/RocketFigure.java +++ b/swing/src/net/sf/openrocket/gui/scalefigure/RocketFigure.java @@ -474,6 +474,7 @@ public class RocketFigure extends AbstractScaleFigure { */ @Override protected void updateCanvasOrigin() { + final int subjectFront = (int)(subjectBounds_m.getMinX()*scale); final int subjectWidth = (int)(subjectBounds_m.getWidth()*scale); final int subjectHeight = (int)(subjectBounds_m.getHeight()*scale); @@ -483,7 +484,7 @@ public class RocketFigure extends AbstractScaleFigure { originLocation_px = new Dimension(newOriginX, newOriginY); }else if (currentViewType == RocketPanel.VIEW_TYPE.SideView){ - final int newOriginX = borderThickness_px.width; + final int newOriginX = borderThickness_px.width - subjectFront; final int newOriginY = Math.max(getHeight(), subjectHeight + 2*borderThickness_px.height )/ 2; originLocation_px = new Dimension(newOriginX, newOriginY); From 5cd7f9784784a18b25754a1fabed0628a284c7a3 Mon Sep 17 00:00:00 2001 From: Daniel_M_Williams Date: Fri, 21 Dec 2018 14:46:46 -0500 Subject: [PATCH 2/2] [comment] delete misleading/incorrect comment --- swing/src/net/sf/openrocket/gui/scalefigure/FinPointFigure.java | 1 - 1 file changed, 1 deletion(-) diff --git a/swing/src/net/sf/openrocket/gui/scalefigure/FinPointFigure.java b/swing/src/net/sf/openrocket/gui/scalefigure/FinPointFigure.java index c4379ff9c..38f959950 100644 --- a/swing/src/net/sf/openrocket/gui/scalefigure/FinPointFigure.java +++ b/swing/src/net/sf/openrocket/gui/scalefigure/FinPointFigure.java @@ -371,7 +371,6 @@ public class FinPointFigure extends AbstractScaleFigure { final int finFrontX = (int)(subjectBounds_m.getX()*scale); final int subjectHeight = (int)(subjectBounds_m.getHeight()*scale); - // the negative sign is to compensate for the mount's negative location. originLocation_px.width = borderThickness_px.width - finFrontX; if( visibleBounds_px.height > (subjectHeight+ 2*borderThickness_px.height)) {