Adding parts to the openrocket database?

The Rocketry Forum

Help Support The Rocketry Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

mooffle

Well-Known Member
TRF Supporter
Joined
Apr 20, 2020
Messages
393
Reaction score
261
Hi everyone, is it possible to edit the parts database in OR? Based on the following lines from the wiki it seems doable but not easy:

Implement GUI for creating components(?)
  • Useful for manufacturers
However I couldn't find a how to. Basically all I want to do is put in some non standard tubes that I use fairly regularly along with payload objects (my designs that would be handy to 'test' in OR) that I swap between rockets without having to measure or keep track of them externally. When I open OR with archive manager I can see the underlying file structure but can't tell where this might be buried. If anyone knows of a how-to or can point me in the right direction I'd love to hear it.

My background is in IT with a smidgen of programming background so I'm not adverse to digging into this. If there is no how to but someone can point me in the right direction I'll happily make one.

Alternatively if there are plans to have the above GUI feature in v16 I can wait.
 
Hi everyone, is it possible to edit the parts database in OR? Based on the following lines from the wiki it seems doable but not easy:
There is currently no way to do this, nor is it coming in the next version.

However, you will find @caveduck 's OR Parts database to have useful information for you:
https://github.com/dbcook/openrocket-database
However I couldn't find a how to. Basically all I want to do is put in some non standard tubes that I use fairly regularly along with payload objects (my designs that would be handy to 'test' in OR) that I swap between rockets without having to measure or keep track of them externally.
Although it is a poor substitute for what you want, remember that you can copy/paste parts (or full component trees) between rockets.
 
Although it is a poor substitute for what you want, remember that you can copy/paste parts (or full component trees) between rockets.

There's also a trick where if you have a motor mount that you've already added all the motors to and done some custom editing and naming, you can simply 'build' the new rocket round said mount from a previous sim and not have to do it all over again.
 
Although it is a poor substitute for what you want, remember that you can copy/paste parts (or full component trees) between rockets.
There's also a trick where if you have a motor mount that you've already added all the motors to and done some custom editing and naming, you can simply 'build' the new rocket round said mount from a previous sim and not have to do it all over again.

I did not remember this trick because I didn't know I could do that! Thanks for the tip and it's hardly even a poor substitute, now I can just make a separate folder of parts in my file browser for this.
After looking through K'tesh's engine mount thread this is especially useful for a hot swappable payload bay I'm working on where it is multiple parts (nose/tube/mass/transition).
 
One of the biggest limitations of the parts code in OR is that it doesn't allow for subassemblies that can be combined to make a vehicle. You can only really make libraries of individual parts, and there are a great many part shapes and arrangements that it cannot represent. It would be a fantastic hack if somebody could package up the simulation parts of OR so it could become a plugin to a real CAD program that has truly robust parts and subassembly management.

I would not say there is no way to edit the parts database...the code looks for .orc files in certain standard places (see the readme in my database repo) so you can easily add parts. With only slightly more hacking you can remove the stock parts DB in favor of mine or your own.
 
Although it is a poor substitute for what you want, remember that you can copy/paste parts (or full component trees) between rockets.
How does one do the copy/paste? I tried unsuccessfully. I had two versions of OR 22.05 running and copied some parts to the clipboard and tried to paste into the other open version. It didn’t show an active paste command.
 
In my opinion the inability to copy and paste between rocket designs is the single most glaring defect in an otherwise great program. It is the only thing RS has over it.
 
I have just done some experimenting and it worked just fine in beta 5 (and beta 4 as well) to copy from one rocket to another.

Can you provide a specific example where it doesn't work?
 
I tried a simple test:

Opened one rocket. Copied the wadding. Pasted it. It landed in the same place. Undo. Selected the nose cone. Ctrl-V. Nose cone has wadding. Undo.

Open a similar rocket. Add a launch lug. Copy the launch lug. I can paste it to any group in that rocket.

Go to first rocket. Try to paste launch lug onto the body tube group. I get wadding.

Close and re-open first rocket, so there's no copied part in that instance of OR. Go to second rocket, copy launch lug. Go to first rocket, try to paste launch lug to body tube. Nothing.

Running Windows 10 Pro, Version 21H1.

OR 22.02.beta.05
 
I have just done some experimenting and it worked just fine in beta 5 (and beta 4 as well) to copy from one rocket to another.

Can you provide a specific example where it doesn't work?
I have tried many times over the years whenever a new version is released.

Open a design file in an instance of OR and another design file in a second instance of OR. Copy a component in either instance then switch to the other. The Paste command in the second isn't even enabled, just as if the clipboard was empty. Yet I can paste into the instance from which it was copied.

I too use Windows, version 11 in my case. Maybe this is an OS thing. What OS do you use?
 
You can cut and paste between two instances of the same OpenRocket. For example, start OpenRocket, open a design, select new, cut and paste from first to second. This is an example of two instances of the same OpenRocket.

Second example, double-click an existing .ork file to open it, double-click on a different .ork file to open it, cut and paste does NOT work between the two because they are two different OpenRockets.

Third example, start OpenRocket, open an existing design, double-click on a different .ork file to open it, cut and paste does NOT work between the two because they are two different OpenRockets
 
You can cut and paste between two instances of the same OpenRocket. For example, start OpenRocket, open a design, select new, cut and paste from first to second. This is an example of two instances of the same OpenRocket.

Second example, double-click an existing .ork file to open it, double-click on a different .ork file to open it, cut and paste does NOT work between the two because they are two different OpenRockets.

Third example, start OpenRocket, open an existing design, double-click on a different .ork file to open it, cut and paste does NOT work between the two because they are two different OpenRockets

Why open two instances of the same ORK file to copy components when you can do that just fine with only one instance? I think you're missing the point of this thread.
 
I think you're missing the point of this thread.
The point of the thread was to clarify how the OpenRocket cut and paste feature currently actually works, compared to how the reporting users expected it to work. This is how the developers learn what users expect so that OpenRocket may adapt and evolve, where appropriate.

Why open two instances of the same ORK file to copy components when you can do that just fine with only one instance?
The point is. . . that is not what I said to do. I said you can't copy between two separate instances of OpenRocket (although some users are asking for the ability to do so).
 
Last edited:
Non-intuitive when the clipboard normally functions across all open applications, but at least I'm sorted out now. Thanks for the explanation!
Yes, it appears we are using a private clipboard rather than the system clipboard, and that is unlikely to change soon. What might be able to change in a future release is to avoid creating multiple instances when double-clicking an ORK file, so everything stays within one instance.

This leaves out the ability to copy/paste between different versions (which by definition be multiple instances) but I'm not sure why that would be necessary in all but very unusual circumstances.
 
I think the way it works now is fine, but it might be nice to have it documented somewhere that was easy to find, as at least two of us were tripped up by it.

I'd rather see effort go into making it do things it doesn't now do, like export the sim results summary panel as a .csv or something.
 
This leaves out the ability to copy/paste between different versions (which by definition be multiple instances) but I'm not sure why that would be necessary in all but very unusual circumstances.
I tried to copy between two different copies of the program because I couldn’t see a way to save sub-assemblies so that I could call them up in a different rocket. I didn’t want to have to recreate the subassembly for a second rocket. Maybe there’s a way to do that and I’m just not aware of it, but I didn’t see anything covering that in OR.
 
I tried to copy between two different copies of the program because I couldn’t see a way to save sub-assemblies so that I could call them up in a different rocket. I didn’t want to have to recreate the subassembly for a second rocket. Maybe there’s a way to do that and I’m just not aware of it, but I didn’t see anything covering that in OR.
I still don't understand why that requires opening two versions of the program? If you keep a subassembly open in one window, then just copy it to another rocket open within the same instance. Maybe I am missing something.
 
The point of the thread was to clarify how the OpenRocket cut and paste feature currently actually works, compared to how the reporting users expected it to work. This is how the developers learn what users expect so that OpenRocket may adapt and evolve, where appropriate.


The point is. . . that is not what I said to do. I said you can't copy between two separate instances of OpenRocket (although some users are asking for the ability to do so).

The title of the thread is: "Adding parts to the openrocket database“. Niel_w replied it is not possible, but offered copy and paste parts between rockets as a workaround. Obviously this requires two instances, each with a different rockets.

I and others replied that this doesn't work. We now know that it works on a Mac, but not for Windows.

So, yeah, you missed the point of the thread.
 
Yes, it appears we are using a private clipboard rather than the system clipboard, and that is unlikely to change soon. What might be able to change in a future release is to avoid creating multiple instances when double-clicking an ORK file, so everything stays within one instance.

This leaves out the ability to copy/paste between different versions (which by definition be multiple instances) but I'm not sure why that would be necessary in all but very unusual circumstances.

It seems to me that changing to the system clipboard would be the cleanest fix and result in the most intuitive user experience. There must be technical reasons that make this difficult.

In any event, your proposal does solve the problem and provides necessary functionality.
 
The title of the thread is: "Adding parts to the openrocket database“. Niel_w replied it is not possible, but offered copy and paste parts between rockets as a workaround. Obviously this requires two instances, each with a different rockets.
No. Two different tickets can be open in the same instance of the program; that is what I would call the “normal” way of using OR. What Craig was explaining was how to avoid Inadvertently starting multiple instances, which is what (in this case) prevents you from being able to copy and paste.
 
I couldn’t see a way to save sub-assemblies so that I could call them up in a different rocket . . . Maybe there’s a way to do that and I’m just not aware of it, but I didn’t see anything covering that in OR.

There is now an example showing how to create and save a "subassembly" file, as well as how to copy and paste that subassembly into a new design. The demonstration uses a motor mount, but the technique can be adapted to avionics bays and other common subassemblies. This is now on the OpenRocket Wiki Tips and Tricks appendix under "How To. . ." Model Subassemblies and Subcomponents.

I hope this is helpful.
 
There is now an example showing how to create and save a "subassembly" file, as well as how to copy and paste that subassembly into a new design. The demonstration uses a motor mount, but the technique can be adapted to avionics bays and other common subassemblies. This is now on the OpenRocket Wiki Tips and Tricks appendix under "How To. . ." Model Subassemblies and Subcomponents.

I hope this is helpful.

Essential, this is what I've trying all along. Although it works on Macs, it doesn't on Windows.

This seems to be a functional difference between how OR works on these platforms.

You should try it yourself on a Windows machine.
 
Back
Top