In previous posts I’ve mentioned that aerospace is a part of my day job. Recently, me and Patrick Cozzi were asked to put together a Cesium demo showcasing the Cygnus spacecraft’s mission to the International Space Station. Here’s a screen shot, but you might as well just run the demo.
From a technical standpoint, this demo shows off two in-development features of Cesium.
First, and most obvious, is the fact that we are loading glTF models. Much like the glTF specification itself, this feature is in heavy development and not yet ready for general use. Of course the code is already available in the gltf branch of the official Cesium GitHub repository. The demo uses two models, the ISS is featured in the above picture and below is the Cygnus spacecraft.
The second feature we’re demoing is drawing paths in different reference frames. Specifically, the demo draws the Cygnus orbit path in the ISS’ Vehicle Velocity Local Horizontal (VVLH) reference frame. If you’re not familiar with VVLH or reference frames in general, here’s a basic visual explanation.
In the above animation (which isn’t Cesium and was made with STK), the yellow line is what the Cygnus orbit would look like if you were to view it from a fixed point in Outer Space while the Earth was spinning beneath you. This is known as International Celestial Reference Frame (ICRF) and visually makes sense without further explanation because it’s the way we normally see things.
The white line, however, is what the orbit would look like if you were standing on the ISS itself. Rather than seeing Cygnus travel around the Earth, it would simply be hovering in the air, slowly drifting upwards as it begins it’s docking procedure. The data is the same, it’s simply being visualized differently. You can imagine that the engineer planning the docking procedure would find the VVLH view infinitely more useful that the inertial one, since it shows where Cygnus has been or will be relative to the ISS.
For those curious as to how we generated the data for the demo itself, we started with a scenario originally built in STK and ran it through an in-development tool that generates CZML. You can read more about the tools used in the Cygnus mission on the AGI blog.
You can link directly to the demo at https://cesiumjs.org/Cygnus.