Die Erde aus dem All¶
Earthview zeigt die Erde aus großer Höhe, ab Werk aber nur mit 2048 Pixeln pro Kachel, grob 5 km pro Pixel. Mit NASA-Bildern werden daraus 16.384 Pixel.




Links ab Werk, rechts mit NASA-Bildern.
Platz und Zeit¶
Du brauchst etwa 6 GB für die Quellen und 3 GB für das Ergebnis, dazu viel Arbeitsspeicher. Rechne pro Kachel mit einigen Minuten.
Bilder herunterladen¶
mkdir -p "$FG_BASIS"/Quellen/{blue_marble_ohne_relief,black_marble_2016,blue_marble_clouds}
cd "$FG_BASIS/Quellen"
N=https://eoimages.gsfc.nasa.gov/images/imagerecords
for k in A1 B1 C1 D1 A2 B2 C2 D2; do
curl -L -o blue_marble_ohne_relief/bm.$k.jpg "$N/74000/74167/world.200410.3x21600x21600.$k.jpg"
curl -L -o black_marble_2016/BlackMarble_2016_$k.jpg "$N/144000/144898/BlackMarble_2016_$k.jpg"
done
curl -L -o blue_marble_clouds/cloud.E.png "$N/57000/57747/cloud.E.2001210.21600x21600.png"
curl -L -o blue_marble_clouds/cloud.W.png "$N/57000/57747/cloud.W.2001210.21600x21600.png"
Bauen und einbauen¶
cd "$FG_BASIS/werkzeuge"
python3 nasa_erde.py
python3 nasa_erde.py --einbauen
Das Overlay muss vorher eingerichtet sein.
Earthview einschalten¶
Earthview läuft über Nasal, also auch von außen:
from fg_steuerung import Fg
fg = Fg()
fg.nasal("earthview.start();")
fg.set("/earthview/cloudcover-bias", 0.6) # kleiner: weniger Wolken
fg.set("/earthview/cloud-shadow-flag", 0)
Zurück geht es mit earthview.stop();. Earthview eignet sich erst für große Höhen, bei mir ab 90.000 ft.
Stolpersteine¶
Stadtlichter im Alphakanal: Der Shader rechnet
night_light = 1 - alpha. Black Marble zeigt auch das Land schwach, darum zählen erst Werte ab 45 als Licht.Gespiegelte Erde: DDS liegt anders herum als PNG. Ungespiegelt lag die Arktis am Äquator.
Furchen im Meer: Die NASA-Fassung mit Bathymetrie zeigt den Meeresboden. Das Skript nutzt deshalb die Fassung ohne Relief.
ImageMagick-Grenze: 16.384 Pixel scheitern am Stück. DXT5 komprimiert aber je 4 × 4 Pixel, also wandelt das Skript Streifen einzeln um und hängt sie aneinander.
Raster bei starkem Zoom: Die Stadtlichter zeigen dann ein feines Muster. Das sind die Pixel im NASA-Bild, kein Fehler im Shader.