]> git.gag.com Git - sw/motorsim/commitdiff
made the core xsection display size itself
authorBill Kuker <bkuker@billkuker.com>
Fri, 17 Apr 2009 04:23:33 +0000 (04:23 +0000)
committerBill Kuker <bkuker@billkuker.com>
Fri, 17 Apr 2009 04:23:33 +0000 (04:23 +0000)
src/com/billkuker/rocketry/motorsim/visual/GrainPanel.java

index 5ba279fbbee088ab437eff55d35554d1def74d37..6fa3b34853ccbd95f942fa5b1ab04666759cb029 100644 (file)
@@ -116,8 +116,19 @@ public class GrainPanel extends JPanel {
                private static final long serialVersionUID = 1L;\r
                Grain grain;\r
                public XC(Grain g){\r
-                       setMinimumSize(new Dimension(440,250));\r
                        grain = g;\r
+                       java.awt.geom.Area unburnt = grain.getSideView(Amount.valueOf(0, SI.MILLIMETER));\r
+                       \r
+                       Rectangle bounds = unburnt.getBounds();\r
+                       double max = bounds.getWidth();\r
+                       if ( bounds.getHeight() > max )\r
+                               max = bounds.getHeight();\r
+                       int w = (int)(bounds.getWidth() * 200.0 / max);\r
+                       if ( w < 40 )\r
+                               w = 40;\r
+                       \r
+                       setMinimumSize(new Dimension(240+w,250));\r
+\r
                }\r
                public void paint(Graphics g){\r
                        super.paint(g);\r