Staying Grounded While Drifting in Space: Understanding PCI Coordinates
Introduction
Juno: New Origins uses a Planet-Centered Inertial (PCI) coordinate system to track the position and motion of objects in space. Unlike surface-based coordinate systems, PCI coordinates do not rotate with the planet — they remain fixed relative to the stars.
This section explains how PCI works in the game and why it’s essential for trajectory planning, orbital mechanics, and precise maneuvering.
What is PCI?
PCI coordinates are a three-dimensional Cartesian coordinate system with the planet’s center as the origin.
- The axes remain fixed in space rather than rotating with the planet.
- Position (x, y, z) is absolute relative to the planet’s center, not to its surface.
- PCI is commonly used in real-world orbital mechanics because it simplifies motion calculations.
How PCI Works in Juno: New Origins
The position of an object is given as a 3-dimensional vector: (x, y, z). Here are some of the properties you can reference in Vizzy that use PCI coordinates:
The position vectors represent the object’s location relative to the planet’s center. All position properties use meters as their unit, and so the numbers returned may be quite large.
- As you enter or exit one planetary body’s sphere of influence, remember that the PCI values will instantaneously change to reference the new body’s center. Keep this in mind when planning interplanetary transfers.
Important Note: unlike typical Earth-Centered Inertial coordinates where z is pointing ‘up’ toward the North Pole, in Juno the y coordinate is ‘up’ toward the North Pole. This can be a confusing difference, but is crucial to remember.
Why Use PCI Instead of Surface-Based Coordinates?
“A stable reference frame is the key to stable orbits.”
- Stable Reference Frame —> PCI allows for accurate orbital predictions without interference from planetary rotation.
- Simplifies Orbital Calculations —> No need to compensate for a moving ground frame.
- Essential for Vizzy Programming —> Many built-in functions return PCI values, making them crucial for scripting.
Examples & Applications
Use Vizzy to reference and display an object’s PCI position:
This returns the (x, y, z) PCI position of the craft relative to the planet’s center. But, the default vector display is not so great…
However, you can improve things with a handy vector display function:
Which results in a much more user-friendly format:
I've just make a vizzy program, (Called Flight Log 1.0) it's on my forum named How to make a simple flight log.