Orbital Predictor, developed by Shane Carty, is intended for earth observation (EO) scientists wishing to plan imaging campaigns. It allows users to specify an area of the Earth’s surface and a period of time and be returned a list of EO satellites that will be in a position to observe that area with their onboard instruments. For example, if there were an earthquake in some region of the world, this application would allow users to quickly figure out which satellites, at which time and with what instruments, would be in a position to image that area.
A key feature of the application is that it doesn’t just check whether a satellite passes over an area; rather, it models the footprint or swath width of the satellite’s onboard instrument, and checks if that footprint intersects with the area of interest.
Orbital Predictor also allows users to visualize the orbits of groups of satellites, using their two-line element sets, which can be updated directly from Celestrak. It also provides API access so users can run queries from their own programs.
Cesium is used to visualize the orbits of the satellites and their instruments’ footprints. The satellites’ orbits are generated from the satellites’ two-line element sets and are are encoded in the CZML file format, using Christian Ledermann’s Python CZML library. The Cesium API is also used to calculate when the instrument footprint of the satellite intersects with the area of interest, and to specify the area of the earth that the user wants to observe.