GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - RocketPy-Team/RocketSerializer: Easily convert your OpenRocket files into RocketPy simulations.

BranchesTags
Open more actions menu

Latest commit

 

History

176 Commits
176 Commits

Folders and files

NameName
Last commit message
Last commit date
.agents/skills
.agents/skills
 
 
.claude
.claude
 
 
.github
.github
 
 
.vscode
.vscode
 
 
examples
examples
 
 
rocketserializer
rocketserializer
 
 
static
static
 
 
tests
tests
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
AGENTS.md
AGENTS.md
 
 
CLAUDE.md
CLAUDE.md
 
 
CODEOWNERS
CODEOWNERS
 
 
GEMINI.md
GEMINI.md
 
 
LICENSE.md
LICENSE.md
 
 
Makefile
Makefile
 
 
OpenRocket-22.02.jar
OpenRocket-22.02.jar
 
 
OpenRocket-23.09.jar
OpenRocket-23.09.jar
 
 
README.md
README.md
 
 
destroy-the-bank.py
destroy-the-bank.py
 
 
pyproject.toml
pyproject.toml
 
 
requirements-dev.txt
requirements-dev.txt
 
 
requirements.in
requirements.in
 
 
run-tests.ps1
run-tests.ps1
 
 
run-tests.sh
run-tests.sh
 
 
test_ork2json-debugger.py
test_ork2json-debugger.py
 
 
testnbbuilder.ipynb
testnbbuilder.ipynb
 
 

Repository files navigation

RocketPy Logo

Documentation Status Chat on Discord Sponsor RocketPy Instagram LinkedIn


Rocket Serializer

rocketserializer is a Python library that provides serialization capabilities for OpenRocket files. It allows you to read OpenRocket files (.ork) using a simple and intuitive command line interface. After serializing the file, you can use the data to create your RocketPy simulation.

Example

Installation

You can install rocketserializer using pip:

pip install rocketserializer

Requirements

Java

You need Java to be installed on your system to use rocketserializer. We recommend downloading Java 17, which is required to run recent OpenRocket JARs (for example OpenRocket-24.12).

https://www.oracle.com/java/technologies/downloads/

OpenRocket

You also need to download the OpenRocket JAR file. You can download it from the following link:

https://openrocket.info/downloads.html

Each version of OpenRocket has its own jar file, and it is important to use the correct java version to run the jar file.

Python Packages

Once you download the rocketserializer package, the following dependencies will be automatically installed:

  • bs4
  • click>=8.0.0
  • lxml
  • numpy
  • jpype1<1.5
  • pyyaml
  • rocketpy>=1.1.0
  • nbformat>=5.2.0

Usage - command line interface

The rocketserializer package will automatically install 2 command-line-interface (cli) options, here's an example:

Serialization

To create a parameters.json file from an OpenRocket file, use the following command:

ork2json --filepath your_rocket.ork

Or, for a more verbose output, you can use the following command:

ork2json --filepath your_rocket.ork --verbose True

The options are the following:

  • --filepath: The .ork file to be serialized.
  • --output : Path to the output folder. If not set, the output will be saved in the same folder as the filepath.
  • --ork_jar : Specify the path to the OpenRocket jar file. If not set, the library will use the newest OpenRocket*.jar found in the current directory.
  • --encoding : The encoding of the .ork file. By default, it is set to utf-8.
  • --verbose : If you want to see the progress of the serialization, set this option to True. By default, it is set to False.

Only the --filepath option is mandatory.

Creating a simulation notebook

ork2notebook --filepath your_rocket.ork

The options are pretty much the same as the serialization command!

Limitations

This code won't work for your rocket if it has any of the following features:

  • Your .ork file must be saved in English
  • Your .ork file must be saved with at least 1 simulation data
  • Only one single stage is supported
  • Only a single motor is supported
  • Only a single nose cone is supported

Roadmap

  • 2024 June : First public release, start receiving feedback from the community.

Before the first public release, we will listen to the community's feedback before defining the roadmap for the next releases.

Contact

If you find any bug or if you want to request new features, please open an issue on GitHub. In case you don't have a GitHub account, you can reach out to us on RocketPy's Discord server.

How to Contribute

The 3 main ways of contributing to this project are:

  1. Reporting bugs and suggesting new features.
    • Use GitHub, preferably, to report bugs and suggest new features.
    • In case you don't have a GitHub account, you can reach out to us on RocketPy's Discord server
  2. Sharing .ork files that can be used to test the library.
    • If you have a .ork file that is not working with the library, please share it with us.
    • If you have a .ork file that is working with the library, please share it with us.
    • If you allow us to use and share your .ork file, we can add it to the test suite.
  3. Developing new features and fixing bugs thorough pull requests on GitHub.
    • If you want to develop new features, you are more than welcome to do so.
    • Please reach out to the maintainers to discuss the new feature before starting the development.

About

Easily convert your OpenRocket files into RocketPy simulations.

Topics

aerospaceflight-simulatormotoropenrocketpythonrocket-simulationrocket-simulatorsimulationtrajectorytrajectory-simulator

Resources

Readme
MIT license
Activity
Custom properties

Stars

37 stars

Watchers

6 watching

Forks

9 forks
Report repository

Releases

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.