Habe gerade JMP 15 installiert! Sieht großartig aus!
Frühe Schritte. habe ich gerade wiederentdeckt gpsd GPS-Daemon läuft auf meinem Server ab vor langer Zeit ...die ich damals nicht benutzte. Einer der interessanten Werte, die von einem GPS-Gerät zurückgegeben werden, ist der Azimut und die Höhe der Satelliten, die es abhört. Ich kann die Socket-Verbindung von JMP zum gpsd-Port verwenden, um diese Werte abzurufen (wobei ich zuvor ein Python-Skript verwendet habe, das eine Datei auf dem Server geschrieben hat, die ich später in JMP kopiert habe.) Aber um so etwas zu rendern Das , ich brauche ein Modell der Erde und GPS-Satelliten ... das ist dieser Beitrag. Führen Sie die angehängte JSL aus; Es entsteht ein 3D-Modell, das Sie mit der Maus drehen können. Dieses Bild ist statisch, zeigt aber die relative Größe der Erde und die Entfernung zu einer GPS-Satellitenumlaufbahn.
20,200 KM above surface, 26,600 KM radius. Two complete orbits each sidereal day.20.200 km über der Oberfläche, 26.600 km Radius. Zwei vollständige Umläufe an jedem Sterntag.
Normalerweise wird die SimpleEarth-Bitmap in einem flachen Diagramm angezeigt:
Example of SimpleEarth from the Air Traffic.JMP sampleBeispiel für SimpleEarth aus dem Air Traffic.JMP-Beispiel
Aber die Bitmap ist auch (in einer Form mit niedriger Auflösung) als acht Kacheln verfügbar. Die JSL fügt diese Kacheln zu einer einzigen Bitmap zusammen und ändert sie auf eine noch niedrigere Auflösung (für Leistung) und erstellt das Kugelmodell aus einem Satz vierseitiger Polygone mit unterschiedlichen Farbpixeln an jeder Ecke. Die 3D-Engine zeigt die Polygone sanft schattiert und mit einem sanften Lichteffekt. Bei 1-Grad-Polygonen gibt es nur 360 x 180 == 64.800 Polygone und die Leistung ist immer noch ziemlich gut. Das Erstellen des Modells dauert ungefähr 10 Sekunden, aber die JSL hält das Modell in einer wiederverwendbaren Anzeigeliste. Ziemlich viel JSL wurde aus zwei der 3D-Beispiele in JMP ausgeliehen und modifiziert: MaterialAndLight.jsl und Sheet.jsl. Suchen Sie im Verzeichnis Samples/Scripts/Scene3D danach.
Auch, @jlsalmon hat ein ähnliches Idee , wobei Punkte anstelle von schattierten Polygonen verwendet werden.