CSS Orbit View

Plot by Elements












Plot from File

MPC #:




Change Time Speed:

Credit: CSS, D. Rankin
Date Options

Go To Date:




View Options

Inner Planets:

Outer Planets:


Asteroid Orbits:





Welcome to the CSS Orbit View application.


Import objects directly from Minor Planet Center database files.
Easily share orbits with copy paste of a URL.
Time (rewind and fast forward) - jump to date.
Fully interactive interface, orbit, zoom.
Save out .PNG images.
Plot and animate hundreds asteroids or comets at once. With a decent GPU you should be able to animate thousands.
View uncertainty plots of objects on the NEOCP. Top 100 orbits.
Load elements from text file generated by FindOrb.
Explore orbit types by downloading this file: Orbit Types. Unzip and plot each class text file using the "Choose File/Browse" feature.

For comets where e > .98, q and T must be provided.


You can get started by just hitting "Plot Object" to plot the featured object. Right now it is Comet C/2021 A1 (Leonard), set to put on a good show in December of 2021.
You can enter your own elements from anywhere they are published, Minor Planet Center (MPC) is a common source.
For example, from MPC elements match up as:
Name (Object Name)
Epoch (epoch JD) - Date of elements solve in Julian Days
a (semimajor axis (AU))
M (mean anomaly (°))
e (eccentricity)
I (inclination (°))
Peri (argument of perihelion (°))
Node (ascending node (°))
P (period(years))
q (perihelion distance (AU)) - only needed for comets where e > 0.98
T (perihelion JD) - only needed for comets where e > 0.98
For any object where e > 0.98, you only need to provide Epoch, e, I, Peri, Node, q and T because a, M, and P are not defined with parabolic or hyperbolic objects.
For elliptic objects, where e < 0.98, you don't need to provide q or T.

A much easier way to get objects on scene is to enter the object's unpacked designation, name, or number from MPC into the "MPC #" box and click "From MPC"
Examples: 1 (would plot Ceres), Bennu, 62701, C/2021 A1, 2020 UP3, P/2021 R4, 2I (interstellar comet Borisov)

The viewer supports multiple objects. If you plot more than one, you can switch between them by using the drop down box in the top left. The top item in the drop down "Show All" will show orbits for all plotted objects. Selecting any individual object will only show its orbit. You can check the "follow" box to have the camera center on the object that is currently selected in the drop down list. There are many other view options on the right side.

You can select an object on the NEOCP and plot the top 100 orbits spanning the uncertainty range from MPC by using the "NEOCP" box and clicking "From NEOCP". The top item in the drop down list will be the MPC's current nominal orbit for the object.

You can also load an elements.txt file generated in Find Orb with the "browse" feature.

You can move through time in a scaled, somewhat arbitrary rate, using the time slider. You can also increment by days using the +Day and -Day buttons. On the right side, you can also enter a specific date.

You can save an image of the current scene with the "Save Image" button on the right. This saves out a CSSOrbitView.png file with a white border and a CSS logo in the bottom right.

You can share orbits for individual objects with the "Share Orbit" button on the right. This creates a link to the orbit viewer with the object elements and camera angle saved in the url. Only works with the currently loaded elements on the right for a single object.

You can load multiple objects at once - one object per line in txt file, comma separated as follows:
Object Name, JDT, a, M, e, I, Peri, Node, P (optional), q (optional), T (optional)
I have provided a few classes of objects ready to go in the "Orbit Types" file above. Use the "browse" feature to plot them.
You can change some display options of bulk imported objects by adding these lines to the top of the file:
A good source for bulk export of objects by elements is the JPL Small Body Database Search Engine
You can export .csv and rename to .txt for use in this application.

Orbit Elements to Cartesian functions based on "How to Compute Planetary Positions" from Paul Schlyter.

Application last updated: 09/23/2021
Please credit: CSS, D. Rankin