Full Javadoc can be generated from the source by running
./gradlew javadoc. The output is written to core/build/docs/javadoc/.Key packages
info.openrocket.core.startup
Bootstrap and dependency injection. Start here when embedding the core module.
info.openrocket.core.rocketcomponent
All rocket component classes — NoseCone, BodyTube, FinSet, Motor, and more.
info.openrocket.core.simulation
Simulation engine, options, and result data.
info.openrocket.core.document
OpenRocketDocument and document factory — the top-level container for a rocket design.info.openrocket.core.file
File loaders and savers (
GeneralRocketLoader, GeneralRocketSaver).info.openrocket.core.l10n
Internationalization —
Translator and related classes.info.openrocket.core.database
Motor and component preset databases.
info.openrocket.core.preferences
ApplicationPreferences — user and application settings.Startup and initialization
| Class | Description |
|---|---|
OpenRocketCore | Static helper to initialize the core module with one call. |
Application | Provides static accessors for core singletons (translator, preferences, motor database). |
CoreModule | Guice module that wires all core services together. |
PluginModule | Guice module for plugin support. Pass to OpenRocketCore.initialize(). |
Rocket component model
All rocket components live ininfo.openrocket.core.rocketcomponent. The component tree is rooted at Rocket, which contains one or more AxialStage objects.
| Class | Description |
|---|---|
Rocket | Top-level rocket object. Contains stages. |
AxialStage | A stage (sustainer, booster, etc.). Contains components. |
NoseCone | Nose cone component with configurable shape (ogive, conical, parabolic, etc.). |
BodyTube | Cylindrical body tube. |
Transition | Transition (shoulder or boat tail) between two diameters. |
TrapezoidFinSet | Trapezoidal fin set. |
EllipticalFinSet | Elliptical fin set. |
FreeformFinSet | Freeform fin set defined by arbitrary points. |
InnerTube | Inner tube, used as a motor mount or structural element. |
LaunchLug | Launch lug. |
RailButton | Rail button for launch rails. |
Parachute | Parachute recovery device. |
Streamer | Streamer recovery device. |
MassComponent | Non-structural mass object (e.g. electronics bay, payload). |
ShockCord | Shock cord connecting airframe sections. |
Component hierarchy
Components are connected in a parent–child tree. Callparent.addChild(child) to attach a component. Each component class defines which child types it accepts.
Document API
| Class | Description |
|---|---|
OpenRocketDocument | Container for a complete rocket design, simulations, and metadata. |
OpenRocketDocumentFactory | Factory for creating new blank documents. |
File I/O
| Class | Description |
|---|---|
GeneralRocketLoader | Detects file format and loads .ork or .rkt files into an OpenRocketDocument. |
GeneralRocketSaver | Saves an OpenRocketDocument to disk. |
Simulation API
| Class | Description |
|---|---|
Simulation | Represents a single simulation run bound to a Rocket. |
SimulationOptions | Configuration for a simulation: launch angle, wind, altitude, motor selections, etc. |
SimulationStatus | Runtime state during simulation. |
FlightDataType | Enum of all measurable flight data types (altitude, velocity, acceleration, etc.). |
FlightData | Result data from a completed simulation. |
FlightDataBranch | A single data series (e.g. main flight path or ejected stage). |
Database API
| Class | Description |
|---|---|
ThrustCurveMotorSetDatabase | Database of all known motors loaded from the bundled SQLite file. |
ComponentPresetDao | Data access object for component presets (commercial tubes, nose cones, etc.). |
Application:
Internationalization
| Class | Description |
|---|---|
Translator | Interface for retrieving translated strings by key. |
ClassBasedTranslator | Automatically infers a translation key prefix from the calling class. |
ExceptionSuppressingTranslator | Wraps another translator and suppresses missing-key exceptions. |
Preferences
ApplicationPreferences exposes user settings such as units, default simulation parameters, and UI preferences. Access it through Application: