I’m building a python/flask web application to serve space situational awareness information generated within Orekit/python. I was curious if any of you have suggestions on what the best library would be to use for 3d orbit visualization? I have looked at CesiumJS and also WebGL Earth (based on cesium) so far, but CesiumJS is very much pushing the (not free) use of their Cesium Ion service now which is unattractive.
I realize this question isn’t exactly about Orekit, but was hoping someone else on the forum may have tried to share Orekit data in a web browser before and might have some insight.
I may have found enough information to answer my own question, but in case this is useful to others I wanted to share. Stuff-in-Space is an amazing visualization of all known objects currently on orbit, and was developed using the WebGL Earth library. So it looks like that’s the way to go.
Yes this is an interesting area, I have used CesiumJS for some things, and there nowadays an updated notebook widget as part of the CZML3 package (https://github.com/poliastro/czml3)
Another library that may be worth looking at is the Web World Wind library, largely by NASA with contributions from ESA.
Hi snr, since I posted this 4 years ago much has happened … I did end up using CesiumJS in combination with the python czml3 library. That combination works well together and both packages have come a long way in terms of feature support and online resources (links below).
I’ve looked at using Cesium for some of my own visualization work - would you be willing to share some very simple code that demonstrates how you’re tying the Cesium into Orekit?
Hi baubin, I’m sorry it took so long to get back to this. We (Outlyer.Space) have been super busy preparing to publish first results at IAC24, but finally got the paper done and coming up for air now.
I’d be really happy to see other people benefit from the work we’ve done and do intend to open source the whole thing. However, we’re still unfunded and I need help to clean up the code so this doesn’t divert all of my time from our primary goal (building a telemetry / tracking network).
You can find us on LinkedIn with a post pointing at a live CesiumJS scenario to explore. If you know of anyone who might be willing to pitch in (or are interested yourself!) please message us there. Thanks!
Hello @Ralph , the work you did is really cool and kind of close of what I am actually doing !
I am currently developping an interface between Orekit and CesiumJS in order to be able to use Orekit outputs to generate a visualization in Cesium. If you want to check on it, you can here. Is your project open source or not, if so is there a repository ?
PS : In the example that you shown it seems like you use Czml files to display orbits, but I don’t get what are the orange lines are.
(Btw I really like the skin of the Earth that you used, where did you get it ?).
Hi Zudo, thanks for joining the conversation - OreCZML looks really good! you’re right we used
orekit > python > czml3 > CesiumJS
The orange traces are terrestrial internet connections (notionally shown as great circle range surface lines).
I’m happy to share what we did, but not sure it is all that useful to others before cleaning it up first. Below is the main cesium.py file of our code. Feel free to reuse any of it, or email me at ralph.ewig@outlyer.space if you want a zip of the whole module with all the templates, etc.
Hi @Ralph , I downloaded what you did and tried to run it.
A few questions remains :
In what OS did you develop this ? Is it adaptable for every OS ?
Do you plan to develop the tool more and make it open source in a GitLab/GitHub ?
Also, I had a problem with the dependency arcsim that seems to be hard to install with classical python methods (pip).
But this work is really impressive, and it could be interesting to use what you did for Orekit wrapper python users to have a graphical interface written in python.
Hi Zudo, the file I shared is just one of 200+ in the whole ArcSim application. I do want to open source all of it, but I need help to clean it up & support it. If you’re interested in joining the project, you can learn more about it here Outlyer.Space | LinkedIn
Ralph
PS: I will be at IAC24 in Milan next week, if anyone else is attending and would like to meet up please message me!
No worries, I completely understand being busy (my own work schedule is crazy right now). Really appreciate you posting more about this! I don’t really have the bandwidth to chip in right now but I’ll do my best to at least find time to check this out.