Ground Track Generator
A utility to write satellite ground tracks as GIS-compatible shapefiles. Orbits are modelled with Dan Warner's C++ SGP4 library, based on "Revisiting Spacetrack Report #3", by David Vallado, Paul Crawford, Richard Hujsak, and T.S. Kelso. Two-line element (TLE) sets of orbit parameters are read as input. Shapelib 1.3.0b3 is used to generate the shapefiles.
Ground Track Generator can represent each step of the ground track as points or line segments. The step size is determined by a user-specified time interval. The extent of the ground track is controlled by a start time (absolute or relative to the TLE epoch) and either an end time or a step count. A variety of attributes can be output for each step, including elevation and azimuth as viewed from an optionally-specified ground observer.
Instructions and Examples
Examples/README.md for a guide to getting started with
gtg, including screenshots, comments on command line options, and example files. This is a good place to start!
An executable copy of
gtg for Intel Macs is available here. It is a command line program.
For the time being, users of other platforms will need to compile
gtg themselves. Please see the following section.
To compile Ground Track Generator you need two small libraries. See
Libraries/README.md for setup details (it's a matter of downloading two zip files, dragging their contents to
Libraries, and installing the provided Makefiles).
Once that's done, the following should be sufficient to build Ground Track Generator:
To run the test cases described in
Note that errors in test cases 12, 23, 26, 27, 30, 31, and 33 are an intentional part of the test suite.
Feedback is encouraged - especially bug reports and suggested test cases. Ideas for new features are welcome, but I am especially interested in ensuring accuracy and learning more about how to recognize or quantify possible error conditions.
Ground Track Generator is freely distributed under an open source MIT License:
Copyright (c) 2012 & 2013 Jim DeVona
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.