File Specification
This page describes the specification of OpenRocket’s design file format (.ork
), and the OpenRocket component
file format (.orc
).
OpenRocket Design File (.ork)
The OpenRocket design file format is a human-readable XML format that describes a rocket design. It contains all the information needed to recreate the design in OpenRocket, including the rocket’s components, materials, and simulation settings. The file format is designed to be extensible, allowing for the addition of new features and properties in a backward-compatible way.
Note
Not every parameter in the XML file is explained here. Please refer to the
core/src/main/java/info/openrocket/core/file/openrocket
package in the
source code.
File Architecture
The OpenRocket design file (.ork
) is a ZIP archive containing an XML format file and any associated graphics files.
While OpenRocket also accepts the .ork.gz
extension, the plain .ork
extension is recommended.
To examine the contents of an .ork
file:
Rename the file extension from
.ork
to.zip
Extract the contents using any ZIP extraction tool
The main rocket design is stored in the XML file named rocket.ork
Version Control
The file format uses semantic versioning, indicated by the version
attribute in the root <openrocket>
tag.
The version number follows these rules:
Major version increases indicate backward-incompatible changes
Minor version increases indicate backward-compatible additions
The version is internally stored as an integer, divided by 100 (e.g., version “1.10” is stored as 110)
For maximum compatibility, files should be saved using the oldest format version that supports all required features
The creator
attribute optionally specifies the software and version used to create the file.
Version History
The following table lists the version history of the OpenRocket design file format (taken from fileformat.txt file in the root directory of our repository).
Version |
Release |
Changes |
---|---|---|
1.0 |
OpenRocket 0.9.0 |
Initial public release |
1.1 |
OpenRocket 0.9.4 |
|
1.2 |
OpenRocket 1.1.1 |
Added |
1.3 |
OpenRocket 1.1.9 |
Added |
1.4 |
OpenRocket 12.03 |
|
1.5 |
OpenRocket 12.09 |
|
1.6 |
OpenRocket 13.04 |
|
1.7 |
OpenRocket 15.03 |
|
1.8 |
OpenRocket 22.02 |
|
1.9 |
OpenRocket 23.09 |
Added component IDs for flight event sources |
1.10 |
OpenRocket 24.12 |
|
Root Structure
The following shows the root XML structure of an OpenRocket design file:
<?xml version='1.0' encoding='utf-8'?>
<openrocket version="1.10" creator="OpenRocket 24.12.beta.01">
<rocket>
<!-- Rocket definition -->
</rocket>
<simulations>
<!-- Simulation data -->
</simulations>
<photostudio>
<!-- PhotoStudio settings -->
</photostudio>
<docprefs>
<!-- Document preferences -->
</docprefs>
</openrocket>
The file must begin with the XML declaration:
<?xml version='1.0' encoding='utf-8'?>
Then follows the actual content of the OpenRocket design file, starting with the <openrocket>
tag with the following
content:
rocket
: Rocket definition (see Rocket)simulations
: Simulation data (see Simulation Data)photostudio
: PhotoStudio settings (see PhotoStudio Settings)docprefs
: Document preferences (see Document Preferences)
Rocket
The <rocket>
contains metadata of the rocket (name, designer…), motor configurations in the design, and all the
rocket component definitions:
<rocket>
<!-- Rocket definition -->
<name>[ROCKET NAME]</name>
<id>[UUID]</id>
<axialoffset method="absolute">0.0</axialoffset>
<position type="absolute">0.0</position>
<designer>[DESIGNER]</designer>
<motorconfiguration configid="[CONFIG ID]">
<!-- Motor configuration -->
</motorconfiguration>
<subcomponents>
<!-- Rocket components -->
</subcomponents>
</rocket>
The <rocket>
element contains the following primary attributes:
name
: Name of the rocket designid
: Unique identifier (UUID) - automatically generated by OpenRocketaxialoffset
: Absolute position offsetdesigner
: Designer’s namemotorconfiguration
: One or more motor configurationssubcomponents
: Container for all the rocket components in the design
Motor Configuration
Each <motorconfiguration>
element defines a specific motor setup:
<motorconfiguration configid="[UUID]" default="true|false">
<stage number="0" active="true|false"/>
</motorconfiguration>
Rocket Components
Common Component Attributes
Most components share these common attributes:
id
: Unique identifier (UUID) - automatically generated by OpenRocketname
: Component namefinish
: Surface finish typematerial
: Material specifications including:type
: (bulk, surface, line)density
: Material densitygroup
: Material category
Position and Offset Attributes:
axialoffset
: Position along the rocket’s axisposition
: Legacy position attributeradialdirection
: Angular direction for radial componentsradialposition
: Distance from center axis
Appearance Settings
Components can have appearance settings defined using the <appearance>
tag:
<appearance>
<paint red="51" green="51" blue="51" alpha="255"/>
<shine>0.5</shine>
<decal name="decals/BodyStripe.png" rotation="0.0" edgemode="CLAMP">
<center x="0.0" y="0.0"/>
<offset x="0.0" y="-0.2"/>
<scale x="1.0" y="10.0"/>
</decal>
</appearance>
Inside Appearance
Components can have internal appearance defined separately from external (e.g. for tubes or fins):
<insideappearance>
<edgessameasinside>false</edgessameasinside>
<insidesameasoutside>false</insidesameasoutside>
<paint red="187" green="187" blue="187" alpha="255"/>
<shine>0.3</shine>
<decal name="decals/mainBodyWrap2.png" rotation="0.0" edgemode="REPEAT">
<center x="0.0" y="0.0"/>
<offset x="0.0" y="0.0"/>
<scale x="1.0" y="1.0"/>
</decal>
</insideappearance>
<subcomponents>
Used in assembly components (rocket, stage, pod set, body tube, …) as a container for child components.
<stage>
Contains components for each defined stage.
<stage>
<name>Booster</name>
<id>[UUID]</id>
<separationevent>ejection</separationevent>
<separationaltitude>200.0</separationaltitude>
<separationdelay>0.0</separationdelay>
<separationconfiguration configid="[UUID]">
<separationevent>burnout</separationevent>
<separationaltitude>200.0</separationaltitude>
<separationdelay>0.0</separationdelay>
</separationconfiguration>
</stage>
<nosecone>
The <nosecone>
element defines the Nose Cone component:
<nosecone>
<name>Nose cone</name>
<id>[UUID]</id>
<finish>normal</finish>
<material type="bulk" density="500.0">Basswood</material>
<length>0.22</length>
<thickness>0.002</thickness>
<shape>power</shape>
<shapeclipped>false</shapeclipped>
<shapeparameter>0.4</shapeparameter>
<aftradius>0.075</aftradius>
<aftshoulderradius>0.0</aftshoulderradius>
<aftshoulderlength>0.0</aftshoulderlength>
<aftshoulderthickness>0.0</aftshoulderthickness>
<aftshouldercapped>false</aftshouldercapped>
</nosecone>
Note: Shape values are typically same as editor fields, except: * “power” for Power * “parabolic” for Parabolic * “haack” for Haack series
<bodytube>
The <bodytube>
element defines the Body Tube component:
<bodytube>
<name>Body tube</name>
<id>[UUID]</id>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<length>0.3</length>
<thickness>0.002</thickness>
<radius>auto</radius>
</bodytube>
<transition>
The <transition>
element defines the Transition component:
<transition>
<name>Transition</name>
<id>[UUID]</id>
<finish>normal</finish>
<material type="bulk" density="500.0">Basswood</material>
<length>0.11</length>
<thickness>0.002</thickness>
<shape>haack</shape>
<shapeclipped>true</shapeclipped>
<shapeparameter>0.3</shapeparameter>
<foreradius>auto</foreradius>
<aftradius>0.05</aftradius>
<foreshoulderradius>0.0</foreshoulderradius>
<foreshoulderlength>0.0</foreshoulderlength>
<foreshoulderthickness>0.0</foreshoulderthickness>
<foreshouldercapped>false</foreshouldercapped>
<aftshoulderradius>0.0</aftshoulderradius>
<aftshoulderlength>0.0</aftshoulderlength>
<aftshoulderthickness>0.0</aftshoulderthickness>
<aftshouldercapped>false</aftshouldercapped>
</transition>
<launchlug>
The <launchlug>
element defines the Launch Lug component:
<launchlug>
<name>12. Launch lug</name>
<id>[UUID]</id>
<instancecount>1</instancecount>
<instanceseparation>0.0</instanceseparation>
<angleoffset method="relative">19.0</angleoffset>
<radialdirection>19.0</radialdirection>
<axialoffset method="middle">0.0</axialoffset>
<position type="middle">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<radius>0.0035</radius>
<length>0.035</length>
<thickness>0.001</thickness>
</launchlug>
Motor Mount
Components such as body tubes and inner tubes can be used as motor mounts. If they are, a <motormount>
element will
be present in the XML component block:
<bodytube>
<!-- Other Body Tube definitions -->
<motormount>
<ignitionevent>automatic</ignitionevent>
<ignitiondelay>0.0</ignitiondelay>
<overhang>0.003</overhang>
<motor configid="[UUID]">
<type>single</type>
<manufacturer>Estes</manufacturer>
<digest>22aec01287ea1e3b8c6f66b26fe5fea6</digest>
<designation>A8</designation>
<diameter>0.018</diameter>
<length>0.07</length>
<delay>3.0</delay>
</motor>
<ignitionconfiguration configid="[UUID]">
<ignitionevent>automatic</ignitionevent>
<ignitiondelay>0.0</ignitiondelay>
</ignitionconfiguration>
</motormount>
</bodytube>
Fin Sets
<freeformfinset>
The <freeformfinset>
element defines the Freeform Fin Set component:
<freeformfinset>
<name>Freeform fin set</name>
<id>[UUID]</id>
<position type="bottom">0.0</position>
<finish>normal</finish>
<material type="bulk" density="500.0">Basswood</material>
<fincount>5</fincount>
<rotation>0.0</rotation>
<thickness>0.003</thickness>
<crosssection>airfoil</crosssection>
<cant>0.0</cant>
<filletradius>0.0</filletradius>
<filletmaterial type="bulk" density="680.0">Cardboard</filletmaterial>
<finpoints>
<point x="0.0" y="0.0"/>
<point x="0.03882760416666667" y="0.056620833333333336"/>
<point x="0.11000052083333334" y="0.05582708333333333"/>
<point x="0.07951041666666667" y="0.0"/>
</finpoints>
</freeformfinset>
<trapezoidfinset>
The <trapezoidfinset>
element defines the Trapezoidal Fin Set component:
<trapezoidfinset>
<name>Trapezoidal fin set</name>
<id>[UUID]</id>
<position type="bottom">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<fincount>3</fincount>
<rotation>0.0</rotation>
<thickness>0.003</thickness>
<crosssection>square</crosssection>
<cant>0.0</cant>
<filletradius>0.0</filletradius>
<filletmaterial type="bulk" density="680.0">Cardboard</filletmaterial>
<rootchord>0.05</rootchord>
<tipchord>0.05</tipchord>
<sweeplength>0.025</sweeplength>
<height>0.03</height>
</trapezoidfinset>
<ellipticalfinset>
The <ellipticalfinset>
element defines the Elliptical Fin Set component:
<ellipticalfinset>
<name>Elliptical fin set</name>
<id>[UUID]</id>
<position type="bottom">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<fincount>3</fincount>
<rotation>0.0</rotation>
<thickness>0.003</thickness>
<crosssection>square</crosssection>
<cant>0.0</cant>
<filletradius>0.0</filletradius>
<filletmaterial type="bulk" density="680.0">Cardboard</filletmaterial>
<rootchord>0.05</rootchord>
<height>0.05</height>
</ellipticalfinset>
<tubefinset>
The <tubefinset>
element defines the Tube Fin Set component:
<tubefinset>
<name>Tube Fin Set</name>
<id>[UUID]</id>
<instancecount>6</instancecount>
<fincount>6</fincount>
<radiusoffset method="coaxial">0.0</radiusoffset>
<angleoffset method="fixed">0.0</angleoffset>
<rotation>0.0</rotation>
<axialoffset method="bottom">0.0</axialoffset>
<position type="bottom">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0" group="PaperProducts">Cardboard</material>
<fincount>6</fincount>
<rotation>0.0</rotation>
<radius>auto</radius>
<length>0.1</length>
<thickness>0.002</thickness>
</tubefinset>
Inner Components
<innertube>
The <innertube>
element defines the Inner Tube component:
<innertube>
<name>Inner Tube</name>
<id>[UUID]</id>
<axialoffset method="bottom">0.0</axialoffset>
<position type="bottom">0.0</position>
<material type="bulk" density="680.0" group="PaperProducts">Cardboard</material>
<length>0.07</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<outerradius>0.0095</outerradius>
<thickness>5.000000000000004E-4</thickness>
<clusterconfiguration>single</clusterconfiguration>
<clusterscale>1.0</clusterscale>
<clusterrotation>0.0</clusterrotation>
</innertube>
<tubecoupler>
The <tubecoupler>
element defines the Tube Coupler component:
<tubecoupler>
<name>Tube Coupler</name>
<id>[UUID]</id>
<axialoffset method="bottom">0.03175</axialoffset>
<material type="bulk" density="943.0">Phenolic</material>
<length>0.0635</length>
<outerradius>auto</outerradius>
<thickness>5.0E-4</thickness>
</tubecoupler>
<centeringring>
The <centeringring>
element defines the Centering Ring component:
<centeringring>
<name>Centering Ring</name>
<id>[UUID]</id>
<instancecount>1</instancecount>
<axialoffset method="bottom">-0.05715</axialoffset>
<material type="bulk" density="657.0">Fiber</material>
<length>0.00635</length>
<outerradius>0.016269</outerradius>
<innerradius>auto</innerradius>
</centeringring>
<bulkhead>
The <bulkhead>
element defines the Bulkhead component:
<bulkhead>
<name>Bulkhead</name>
<id>[UUID]</id>
<instancecount>1</instancecount>
<instanceseparation>0.0</instanceseparation>
<axialoffset method="bottom">0.0</axialoffset>
<position type="bottom">0.0</position>
<material type="bulk" density="680.0" group="PaperProducts">Cardboard</material>
<length>0.002</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<outerradius>auto</outerradius>
</bulkhead>
<engineblock>
The <engineblock>
element defines the Engine Block component:
<engineblock>
<name>Engine Block</name>
<id>[UUID]</id>
<axialoffset method="bottom">-0.0635</axialoffset>
<material type="bulk" density="657.0">Fiber</material>
<length>0.00635</length>
<outerradius>0.008992</outerradius>
<thickness>7.366E-4</thickness>
</engineblock>
Mass Components
<parachute>
The <parachute>
element defines the Parachute component:
<parachute>
<name>Parachute</name>
<id>[UUID]</id>
<axialoffset method="top">0.032</axialoffset>
<packedlength>0.042</packedlength>
<packedradius>0.009</packedradius>
<cd>auto</cd>
<material type="surface" density="0.067">Ripstop nylon</material>
<deployevent>ejection</deployevent>
<deployaltitude>200.0</deployaltitude>
<deploydelay>0.0</deploydelay>
<diameter>0.3</diameter>
<linecount>6</linecount>
<linelength>0.3</linelength>
<linematerial type="line" density="0.0018">Elastic cord</linematerial>
</parachute>
<streamer>
The <streamer>
element defines the Streamer component:
<streamer>
<name>Streamer</name>
<id>[UUID]</id>
<axialoffset method="top">0.0</axialoffset>
<position type="top">0.0</position>
<packedlength>0.025</packedlength>
<packedradius>0.0125</packedradius>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<cd>auto</cd>
<material type="surface" density="0.067" group="Fabrics">Ripstop nylon</material>
<deployevent>ejection</deployevent>
<deployaltitude>200.0</deployaltitude>
<deploydelay>0.0</deploydelay>
<striplength>0.5</striplength>
<stripwidth>0.05</stripwidth>
</streamer>
<shockcord>
The <shockcord>
element defines the Shock Cord component:
<shockcord>
<name>Shock Cord</name>
<id>[UUID]</id>
<axialoffset method="top">0.044449999999999996</axialoffset>
<position type="top">0.044449999999999996</position>
<packedlength>0.019049999999999997</packedlength>
<packedradius>0.0065405</packedradius>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<cordlength>0.3047999999999995</cordlength>
<material type="line" density="0.00297638" group="ThreadsLines">Elastic rubber band (flat 3.2 mm, 1/8 in)</material>
</shockcord>
<masscomponent>
<masscomponent>
<name>Unspecified</name>
<id>[UUID]</id>
<position type="top">0.11</position>
<packedlength>0.05</packedlength>
<packedradius>0.0225</packedradius>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<mass>0.061</mass>
<masscomponenttype>masscomponent</masscomponenttype>
</masscomponent>
Simulation Data
The <simulations>
section contains flight simulation data. Each simulation is enclosed in a <simulation>
tag:
<simulations>
<simulation status="loaded">
<name>Simulation 1</name>
<simulator>RK4Simulator</simulator>
<calculator>BarrowmanCalculator</calculator>
<conditions>
<configid>[UUID]</configid>
<launchrodlength>1.0</launchrodlength>
<launchrodangle>0.0</launchrodangle>
<launchroddirection>90.0</launchroddirection>
<windaverage>2.0</windaverage>
<windturbulence>0.1</windturbulence>
<wind model="average">
<speed>2.0</speed>
<direction>1.5707963267948966</direction>
<standarddeviation>0.2</standarddeviation>
</wind>
<windmodeltype>Average</windmodeltype>
<launchaltitude>0.0</launchaltitude>
<launchlatitude>45.0</launchlatitude>
<launchlongitude>0.0</launchlongitude>
<geodeticmethod>flat</geodeticmethod>
<atmosphere model="isa"/>
<timestep>0.05</timestep>
<maxtime>1200.0</maxtime>
</conditions>
<flightdata maxaltitude="50.605" maxvelocity="29.249" maxacceleration="143.659"
maxmach="0.086" timetoapogee="3.443" flighttime="15.89"
groundhitvelocity="4.583" launchrodvelocity="15.366"
deploymentvelocity="2.634" optimumdelay="2.763">
<!-- Flight data points -->
</flightdata>
</simulation>
<!-- Other simulations go here -->
<simulation>
<!-- Simulation 2 content -->
</simulation>
<simulations>
PhotoStudio Settings
<photostudio>
<!-- Orientation settings -->
<roll>value</roll> <!-- Roll angle -->
<yaw>value</yaw> <!-- Yaw angle -->
<pitch>value</pitch> <!-- Pitch angle -->
<advance>value</advance> <!-- Advance position -->
<!-- View settings -->
<viewAlt>value</viewAlt> <!-- View altitude -->
<viewAz>value</viewAz> <!-- View azimuth -->
<viewDistance>value</viewDistance> <!-- Camera distance -->
<fov>value</fov> <!-- Field of view -->
<!-- Lighting settings -->
<lightAlt>value</lightAlt> <!-- Light altitude -->
<lightAz>value</lightAz> <!-- Light azimuth -->
<sunlight red="R" green="G" blue="B" alpha="A"/> <!-- Sunlight color -->
<ambiance>value</ambiance> <!-- Ambient light intensity -->
<skyColor red="R" green="G" blue="B" alpha="A"/> <!-- Sky color -->
<!-- Effects settings -->
<motionBlurred>true/false</motionBlurred> <!-- Motion blur enabled -->
<flame>true/false</flame> <!-- Flame effect enabled -->
<flameColor red="R" green="G" blue="B" alpha="A"/> <!-- Flame color -->
<smoke>true/false</smoke> <!-- Smoke effect enabled -->
<smokeColor red="R" green="G" blue="B" alpha="A"/> <!-- Smoke color -->
<sparks>true/false</sparks> <!-- Spark effect enabled -->
<exhaustScale>value</exhaustScale> <!-- Exhaust size scale -->
<flameAspectRatio>value</flameAspectRatio> <!-- Flame shape ratio -->
<!-- Spark properties -->
<sparkConcentration>value</sparkConcentration> <!-- Spark density -->
<sparkWeight>value</sparkWeight> <!-- Spark size -->
<!-- Environment settings -->
<sky>value</sky> <!-- Sky rendering mode -->
</photostudio>
Colors are specified using RGBA values, each in the range 0-255.
Document Preferences
The <docprefs>
section contains document-wide settings, including material definitions:
<docprefs>
<docmaterials>
<material>BULK|My Custom Material 1|680.0|Custom</material>
<material>BULK|My Custom Metal|0.0018|Metals</material>
</docmaterials>
</docprefs>
OpenRocket Component File (.orc)
The OpenRocket component file format is a human-readable XML format that defines standard rocket components and their specifications. This file format allows rocket components to be stored in a database, making it easier for users to select pre-defined components rather than entering specifications manually.
File Architecture
The OpenRocket component file (.orc
) is a plain XML file that contains component definitions. When OpenRocket is
built, these files are serialized into a single binary file (system.ser
) that is included in the OpenRocket jar.
Root Structure
The following shows the root XML structure of an OpenRocket component file:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<OpenRocketComponent>
<Version>0.1</Version>
<Materials>
<!-- Material definitions -->
</Materials>
<Components>
<!-- Component definitions -->
</Components>
</OpenRocketComponent>
Materials
The <Materials>
section defines materials used within the component database:
<Materials>
<Material UnitsOfMeasure="g/cm3">
<Name>Material Name</Name>
<Density>0.0</Density>
<Type>BULK</Type>
</Material>
</Materials>
Material properties:
- UnitsOfMeasure
: Density units (supported formats):
Bulk density: g/cm3, kg/m3, lb/ft3
Areal density: g/cm2, oz/in2
Line density: g/cm, oz/in
Type
: Material type (BULK, SURFACE, or LINE)
Components
Common Component Attributes
All components share these common attributes:
<Manufacturer>Text</Manufacturer>
<PartNumber>Text</PartNumber>
<Description>Text</Description>
<Material Type="BULK">Material Name</Material>
<Mass Unit="kg">0.035892</Mass>
<Finish></Finish>
<CG></CG>
Component Types
Body Tube
<BodyTube>
<InsideDiameter Unit="m">0.0657352</InsideDiameter>
<OutsideDiameter Unit="m">0.06604</OutsideDiameter>
<Length Unit="m">0.36195</Length>
</BodyTube>
Nose Cone
<NoseCone>
<Shape>ELLIPSOID</Shape>
<ShapeParameter>1.0</ShapeParameter>
<Filled>true</Filled>
<OutsideDiameter Unit="m">0.06604</OutsideDiameter>
<BaseDiameter Unit="m">0.06604</BaseDiameter>
<ShoulderDiameter Unit="m">0.064922</ShoulderDiameter>
<ShoulderLength Unit="m">0.0381</ShoulderLength>
<ShoulderThickness Unit="m">0.003175</ShoulderThickness>
<Length Unit="m">0.1016</Length>
<Thickness Unit="m">0.003175</Thickness>
</NoseCone>
Supported nose cone shapes:
CONICAL
ELLIPSOID
HAACK
OGIVE
PARABOLIC
POWER
Note
HAACK, OGIVE, PARABOLIC, and POWER types support a shape parameter that can be set in the UI but cannot be specified in the .orc file.
Transition
<Transition>
<Shape>OGIVE</Shape>
<Filled>true</Filled>
<ForeOutsideDiameter Unit="m">0.067056</ForeOutsideDiameter>
<ForeShoulderDiameter Unit="m">0.064973</ForeShoulderDiameter>
<ForeShoulderLength Unit="m">0.0254</ForeShoulderLength>
<ForeShoulderThickness Unit="m">0.003175</ForeShoulderThickness>
<AftOutsideDiameter Unit="m">0.03175</AftOutsideDiameter>
<AftShoulderDiameter Unit="m">0.0</AftShoulderDiameter>
<AftShoulderLength Unit="m">0.0</AftShoulderLength>
<AftShoulderThickness Unit="m">0.003175</AftShoulderThickness>
<Length Unit="m">0.1524</Length>
<Thickness Unit="m">0.003175</Thickness>
</Transition>
Centering Ring
<CenteringRing>
<InsideDiameter Unit="m">0.0187452</InsideDiameter>
<OutsideDiameter Unit="m">0.0240792</OutsideDiameter>
<Thickness Unit="m">0.003175</Thickness>
<Length Unit="m">0.00635</Length>
</CenteringRing>
Bulkhead
<BulkHead>
<Filled>true</Filled>
<OutsideDiameter Unit="m">0.028701999999999995</OutsideDiameter>
<Length Unit="m">0.038099999999999995</Length>
</BulkHead>
Engine Block
<EngineBlock>
<InsideDiameter Unit="m">0.013131799999999999</InsideDiameter>
<OutsideDiameter Unit="m">0.017983199999999998</OutsideDiameter>
<Thickness Unit="m">0.003175</Thickness>
<Length Unit="m">0.003175</Length>
</EngineBlock>
Launch Lug
<LaunchLug>
<InsideDiameter Unit="m">0.0055626</InsideDiameter>
<OutsideDiameter Unit="m">0.006096</OutsideDiameter>
<Length Unit="m">0.0508</Length>
</LaunchLug>
Parachute
<Parachute>
<Diameter Unit="m">0.6095999999999999</Diameter>
<DragCoefficient>0.80</DragCoefficient>
<Sides>8</Sides>
<LineCount>8</LineCount>
<LineLength Unit="m">0.7493</LineLength>
</Parachute>
Tube Coupler
<TubeCoupler>
<InsideDiameter Unit="m">0.0</InsideDiameter>
<OutsideDiameter Unit="m">0.017907</OutsideDiameter>
<Thickness Unit="m">0.003175</Thickness>
<Length Unit="m">0.019049999999999997</Length>
</TubeCoupler>
Units of Measure
OpenRocket supports various units of measure for component specifications:
Length: mm, cm, m, in, in/64, ft
Distance: m, km, ft, yd, mi, nmi
Velocity: m/s, km/h, ft/s, mph
Mass: g, kg, oz, lb
Angle: deg, rad, arcmin
Force: N, lbf, kgf
Impulse: Ns, lbf*s
Important Notes
Material definitions only have scope within the current datafile.
When a component is first created in a .ork file, the material definition is copied from the .orc file. Subsequent changes to the material definition in the .orc file will not automatically update existing components in .ork files.
To update a component’s material properties, you must manually reselect the component preset from the database.
The XML schema for .orc files is not formally defined in an XSD file.