Showing results for 
Show  only  | Search instead for 
Did you mean: 
JMP is taking Discovery online, April 16 and 18. Register today and join us for interactive sessions featuring popular presentation topics, networking, and discussions with the experts.
Submit your abstract to the call for content for Discovery Summit Americas by April 23. Selected abstracts will be presented at Discovery Summit, Oct. 21- 24.
Super User
3D Effects, Satellites, GPS

Just installed JMP 15! Looks great!


Early steps. I just re-discovered the gpsd GPS daemon running on my server from a long time ago...which I wound up not using then. One of the interesting values returned by a GPS device is the azimuth and elevation of the satellites it is listening to. I can use JMP's socket connection to the gpsd port to get those values (where before I used a Python script that wrote a file on the server that I later copied to JMP.) But to render something like this, I need a model of the Earth and GPS satellites...which is this post. Run the attached JSL; it makes a 3D model you can rotate with the mouse. This picture is static, but shows the relative size of the Earth and distance to a GPS satellite orbit.

20,200 KM above surface, 26,600 KM radius. Two complete orbits each sidereal day.20,200 KM above surface, 26,600 KM radius. Two complete orbits each sidereal day.

Normally the SimpleEarth bitmap is displayed in a flat graph:

Example of SimpleEarth from the Air Traffic.JMP sampleExample of SimpleEarth from the Air Traffic.JMP sample

But the bitmap is also available (in a low res form) as eight tiles. The JSL assembles those tiles into a single bitmap and resizes them to an even lower resolution (for performance) and builds the sphere model from a set of four-sided polygons with different color pixels at each corner. The 3D engine shows the polygons smoothly shaded, and with a smooth lighting effect. With 1-degree polygons, there are only 360x180 == 64,800 polygons and the performance is still pretty good. Creating the model does take about 10 seconds, but the JSL keeps the model in a reusable display list. Quite a bit of the JSL was borrowed and modified from two of the 3D samples in JMP: MaterialAndLight.jsl and Sheet.jsl. Look for them in the Samples/Scripts/Scene3D directory.

Also, @jlsalmon has a similar idea, using points rather than shaded polygons.

Last Modified: Oct 16, 2019 8:34 PM