import net.sf.openrocket.document.Simulation;\r
import net.sf.openrocket.simulation.FlightDataBranch;\r
import net.sf.openrocket.simulation.FlightDataType;\r
+import net.sf.openrocket.simulation.FlightEvent;\r
import net.sf.openrocket.unit.Unit;\r
\r
import org.achartengine.chart.LineChart;\r
private final int simulationIndex;\r
private transient FlightDataType series1;\r
private transient FlightDataType series2;\r
+ private transient List<FlightEvent> events;\r
\r
// Define 4 different colors and point styles to use for the series.\r
// For now only 2 series are supported though.\r
this.series1 = series1;\r
}\r
\r
+ public FlightDataType getSeries1() {\r
+ return series1;\r
+ }\r
+\r
public void setSeries2(FlightDataType series2) {\r
this.series2 = series2;\r
}\r
\r
+ public FlightDataType getSeries2() {\r
+ return series2;\r
+ }\r
+\r
+ public void setEvents( List<FlightEvent> events ) {\r
+ this.events = events;\r
+ }\r
+ \r
+ public List<FlightEvent> getEvents() {\r
+ return events;\r
+ }\r
+\r
public FlightDataBranch getFlightDataBranch( OpenRocketDocument rocketDocument ) {\r
Simulation sim = rocketDocument.getSimulation(simulationIndex);\r
FlightDataBranch flightDataBranch = sim.getSimulatedData().getBranch(0);\r
if (series2== null) {\r
series2 = flightDataBranch.getTypes()[2];\r
}\r
+ \r
+ if ( events == null ) {\r
+ events = new ArrayList<FlightEvent>();\r
+ for ( FlightEvent event : flightDataBranch.getEvents() ) {\r
+ events.add(event);\r
+ }\r
+ }\r
\r
/*\r
* TODO -\r
renderer.setShowGrid(true);\r
renderer.setZoomButtonsVisible(true);\r
renderer.setChartTitle(sim.getName());\r
+ renderer.setShowCustomTextGrid(true);\r
+ renderer.setXLabelsAlign(Align.RIGHT);\r
+ renderer.setXLabelsAngle(90); // rotate right\r
+ for( FlightEvent event : events ) {\r
+ renderer.addXTextLabel(event.getTime(), event.getType().toString());\r
+ }\r
\r
renderer.setMargins(new int[] { 50, 30, 0, 20 });\r
{\r