Vor Jahren habe ich das letzte Mal im Internet nach Programmen gesucht, mit denen man Planeten erstellen kann. Neben ProFantasy und anderen kommerziellen Produkten gab es hier leider wenig – dachte ich jedenfalls. Dann bin ich auf planet
von Torben Ægidius Mogensen gestoßen, ein cooles Kommandozeilentool zur Erstellung von Planeten. Das geniale daran ist, dass man verschiedenste Projektionen erstellen, heranzoomen und vieles mehr kann.
Herunterladen und Compilieren
Unter Ubuntu ist das Einbinden relativ leicht:
Zuerst laden wir die Sources herunter von der Seite http://www.diku.dk/hjemmesider/ansatte/torbenm/Planet/. Hier ein direkter Link.
Per Kommandozeile machen wir folgendes:
1 2 3 4 5 6 7 |
#Falls wir die Pakete noch nicht haben: sudo apt-get install gcc unzip wget mkdir ~/planet cd ~/planet wget www.diku.dk/hjemmesider/ansatte/torbenm/Planet/planet.zip unzip planet.zip gcc planet.c -o planet -lm -O |
Falls keine Fehlermeldungen kommen, dann war’s das. Die ausführbare Datei “planet” kann man nun in ein “bin”-Verzeichnis schieben, z.B. /usr/local/bin oder ~/bin (muss evt. noch im Pfad eingerichtet werden). Alternativ kann man die Datei in diesem Verzeichnis belassen und per vorangestelltem “./” den Pfad angeben… (siehe allgemeine Unix-Beschreibungen).
Rotierendes GIF erstellen
Wie erstelle ich nun ein cooles rotierendes GIF dieses Planeten? Ganz einfach: Wir skripten das!
Hier das Skript, mit dem man das bewerkstelligen kann:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#!/bin/bash #Create Orthographical projection of Planet #Standard setting for planet SETTING="-s 0.36318 -i -0.02" COUNTER=0 until [ $COUNTER -gt 350 ]; do padded=$(printf '%03d' "$COUNTER") echo $padded ./planet $SETTING -w 180 -h 180 -a 20 -po -G 45 -g 45 -L 10 -l $padded | convert - out_$padded.gif let COUNTER+=10 done convert -delay 20 -loop 0 out_*.gif planet_animated.gif #Löschen rm out* |
Dieses kann in einem beliebigen Editor erstellt und gespeichert werden (z.B. als
make_rotate.bash
oder so). Die Switches -s und -i sind für das planet-Programm: -s ist die seed-value und verhindert, dass bei jedem Schritt ein neuer zufälliger Planet generiert wird, -i bestimmt die Meereshöhe. Falls man hier etwas anderes haben will, dann kann man die Werte ändern und beliebig damit herumspielen…
Falls man das Programm “convert” noch nicht hat, kann man es sich per sudo apt-get install imagemagick
ja holen. Außerdem machen wir die Datei noch ausführbar und können Sie danach ausführen:
1 2 |
chmod u+x make_rotate.bash ./make_rotate.bash |
Wenn alles gut geht (man sieht die Zahlen 000-350 am Bildschirm), hat man danach ein rotierendes GIF vom Planeten: