Updates to keep up with rocksim. MotorDB Broken
authorBill Kuker <bkuker@billkuker.com>
Wed, 18 Apr 2012 16:45:42 +0000 (16:45 +0000)
committerBill Kuker <bkuker@billkuker.com>
Wed, 18 Apr 2012 16:45:42 +0000 (16:45 +0000)
gpl/com/billkuker/rocketry/motorsim/visual/openRocket/RocketSimTable.java
gui/com/billkuker/rocketry/motorsim/visual/workbench/MotorsEditor.java
peter.xml [new file with mode: 0644]

index 79453716834ccbd8b17dfeac42c8f8887d6c7e49..b8cc0a67caed077f5befff8e8462a2201d4a43bc 100644 (file)
@@ -6,6 +6,8 @@ import java.awt.Component;
 import java.awt.event.MouseAdapter;\r
 import java.awt.event.MouseEvent;\r
 import java.io.File;\r
+import java.io.FileInputStream;\r
+import java.io.IOException;\r
 import java.util.HashSet;\r
 import java.util.Iterator;\r
 import java.util.List;\r
@@ -23,8 +25,9 @@ import javax.swing.table.DefaultTableCellRenderer;
 import net.sf.openrocket.aerodynamics.Warning;\r
 import net.sf.openrocket.document.OpenRocketDocument;\r
 import net.sf.openrocket.document.Simulation;\r
+import net.sf.openrocket.file.DatabaseMotorFinder;\r
 import net.sf.openrocket.file.RocketLoadException;\r
-import net.sf.openrocket.file.openrocket.OpenRocketLoader;\r
+import net.sf.openrocket.file.openrocket.importt.OpenRocketLoader;\r
 import net.sf.openrocket.gui.plot.PlotConfiguration;\r
 import net.sf.openrocket.gui.plot.SimulationPlotDialog;\r
 import net.sf.openrocket.gui.util.SwingPreferences;\r
@@ -51,7 +54,7 @@ public class RocketSimTable extends JPanel implements BurnWatcher,
        static {\r
                Application.setBaseTranslator(new ResourceBundleTranslator(\r
                                "l10n.messages"));\r
-               Application.setMotorSetDatabase(new OneMotorDatabase());\r
+               //Application.setMotorSetDatabase(new OneMotorDatabase());\r
                Application.setPreferences(new SwingPreferences());\r
 \r
        }\r
@@ -195,8 +198,8 @@ public class RocketSimTable extends JPanel implements BurnWatcher,
                preferredUnitsChanged();\r
        }\r
 \r
-       public void openRocket(File f) throws RocketLoadException {\r
-               this.doc = new OpenRocketLoader().load(f);\r
+       public void openRocket(File f) throws RocketLoadException, IOException {\r
+               this.doc = new OpenRocketLoader().loadFromStream(new FileInputStream(f), new DatabaseMotorFinder());\r
                // JPanel rocketInfo = new JPanel();\r
                // JLabel name = new JLabel("File: " + f.getAbsolutePath());\r
                // rocketInfo.add(name);\r
index 63d8156b97b46f5b3d2f1cca43bd32e12284726b..b9d74698cb11f2a0a3281a962553ebbb04eab90e 100644 (file)
@@ -23,8 +23,6 @@ import javax.swing.JScrollPane;
 import javax.swing.JSeparator;\r
 import javax.swing.JTabbedPane;\r
 \r
-import net.sf.openrocket.file.RocketLoadException;\r
-\r
 import org.apache.log4j.Logger;\r
 \r
 import com.billkuker.rocketry.motorsim.Burn;\r
@@ -163,7 +161,7 @@ public class MotorsEditor extends MultiObjectEditor<Motor, MotorEditor> {
                        log.warn("Opening File " + file.getAbsolutePath());\r
                        try {\r
                                rst.openRocket(file);\r
-                       } catch (RocketLoadException e) {\r
+                       } catch (Exception e) {\r
                                log.error(e);\r
                        }\r
                }\r
diff --git a/peter.xml b/peter.xml
new file mode 100644 (file)
index 0000000..fb4e52a
--- /dev/null
+++ b/peter.xml
@@ -0,0 +1,42 @@
+<object-stream>\r
+       <com.billkuker.rocketry.motorsim.Motor>\r
+               <chamber class="com.billkuker.rocketry.motorsim.CylindricalChamber">\r
+                       <ID>100 mm</ID>\r
+                       <OD>120 mm</OD>\r
+                       <length>920 mm</length>\r
+               </chamber>\r
+               <fuel class="com.billkuker.rocketry.motorsim.fuel.KNDX"\r
+                       serialization="custom">\r
+                       <java.net.URI>\r
+                               <default>\r
+                                       <string>motorsim:KNDX</string>\r
+                               </default>\r
+                       </java.net.URI>\r
+               </fuel>\r
+               <grain class="com.billkuker.rocketry.motorsim.grain.MultiGrain">\r
+                       <count>4</count>\r
+                       <grain class="com.billkuker.rocketry.motorsim.grain.MultiPort">\r
+                               <aftEndInhibited>false</aftEndInhibited>\r
+                               <coreD>15 mm</coreD>\r
+                               <foreEndInhibited>false</foreEndInhibited>\r
+                               <inhibitOutside>true</inhibitOutside>\r
+                               <length>215 mm</length>\r
+                               <oD>100 mm</oD>\r
+                               <r1Count>5</r1Count>\r
+                               <r1D>15 mm</r1D>\r
+                               <r1Offset>20 mm</r1Offset>\r
+                               <r2Count>9</r2Count>\r
+                               <r2D>15 mm</r2D>\r
+                               <r2Offset>40 mm</r2Offset>\r
+                               <ringTwoRot>20 °</ringTwoRot>\r
+                       </grain>\r
+                       <spacing>6 mm</spacing>\r
+               </grain>\r
+               <name>New Motor 1</name>\r
+               <nozzle class="com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle">\r
+                       <efficiency>0.85</efficiency>\r
+                       <exitDiameter>90 mm</exitDiameter>\r
+                       <throatDiameter>33 mm</throatDiameter>\r
+               </nozzle>\r
+       </com.billkuker.rocketry.motorsim.Motor>\r
+</object-stream>
\ No newline at end of file