d0ad9cc08c | ||
---|---|---|
extras | ||
pics | ||
.gitignore | ||
LICENSE | ||
README.md | ||
beidou.txt | ||
galileo.txt | ||
glo-ops.txt | ||
gnss.txt | ||
gps-ops.txt | ||
requirements.txt | ||
tle2ssc |
README.md
Spacecruft Celestia GNSS
Celestia is a "real-time space simulation that lets you experience our universe in three dimensions".
Celestia contains many celestial objects, but few that are man made, such as Hubble. It has a TLE for the ISS, but it doesn't update it.
The present repo contains a script to import GNSS ("GPS") satellite TLE files into Celestia. It could be easily updated for any other source of TLEs.
Quick & Dirty Install
If you just want to import the pre-generated file into Celestia for
a look, just copy this file into your extras
folder or similar.
Install celestia-gnss
Install thusly to generate your own .ssc
files.
git clone https://spacecruft.org/spacecruft/celestia-gnss
cd celestia-gnss
sudo apt update
sudo apt install python3-pip
# Many ways to do python setup, here is one:
pip3 install --upgrade --user pip
# Make sure your path includes `~/.local/bin`, if not, add it.
which pip
# Should be ~/.local/bin/pip
pip install --user -r requirements.txt
Run celestia-gnss
Example (crufty example, if you have perms):
./tle2ssc > /usr/share/celestia/extras-standard/gnss/gnss.ssc
Use in Celestia
Then copy the satellites you want into your Celestia extras dir. Crufty bad way to do it, example:
sudo cp -a extras/gnss/gnss.ssc /usr/share/celestia/extras-standard/
Each system, GPS, Galileo, Glonass, Beidou, or the GNSS files can be used which include all four.
See Also
Spacecruft
Spacecruft:
Celestia
Upstream Celestia:
Celestia forum thread about celestia-gnss:
TLE Conversion
TLE Conversion Spreadsheet by Grant Hutchison from July 2003,
the basis for the formulas in the tle2ssc
script.
-
https://www.classe.cornell.edu/~seb/celestia/hutchison/spreadsheets.html
-
https://www.classe.cornell.edu/~seb/celestia/hutchison/tle-xls.zip
Useful formula from here too:
Solar System Catalog
"Solar System Catalog" files are primarily used to define the objects which can be found in a stellar system, such as planets, moons, asteroids, comets, and spacecraft. They also have four other uses: they can define alternative surface textures, locations on or near an object, and orbital reference points. An SSC file can also edit objects which have been defined in other SSC catalog files.
Info on .ssc
files:
In Celestia name "Galileo" is used for the other spacecraft, not
for the EU GNSS. So the name used in development here adds -gnss
,
ala, galileo-gnss.ssc
, whereas the other GNSS don't.
Example .ssc
file contents:
"1997-035A" "Sol/Earth" {
Class "spacecraft"
# Mesh
Radius 0.005
EllipticalOrbit {
Epoch 2459718.94467728
Period 0.49859567
SemiMajorAxis 26560.345
Eccentricity 0.0057297
Inclination 55.5062
AscendingNode 156.8049
ArgOfPericenter 51.2220
MeanAnomaly 309.3262
}
Obliquity 55.5062
EquatorAscendingNode 156.8049
RotationOffset 80.2289
# Orientation [ ]
}
TLE Sources
GNSS (All)
Beidou (China)
Galileo (Europe)
Glonass (Russia)
GPS (USA)
Spice
Spice TLE: "Evaluate NORAD two-line element data for earth orbiting spacecraft."
SGP4
SPG4
Skyfield
Skyfield
3D Models
Celestia uses an old 3D proprietary format from an old 3D application in
.3ds
format. It also has it's own format .cmod
.
Galileo
Galileo 3D models are from the ESA:
3D Model Conversion
The galileo.obj
file from the ESA can be read by cmodview
in
the celestia-tools
package. The file can be saved in cmodview
as galileo-gnss.cmod
and then read by Celestia.
All GNSS satellites are using the Galileo model right now. XXX
Textures also need to be added. XXX
Blender
Using blender-2.79b
didn't work to convert a .obj
file to .3ds
that worked in Celestia.
Status
Alpha, under development.
Output works in Celestia. Orbits are not confirmed correct.
License / Copyright
Upstream sources under their respective copyrights.
Copyright (C) 2022 Jeff Moe.
License: GPLv2 or any later version.