刚刚安装了 JMP 15! 看起来很棒!
早期的步骤。 我刚刚重新发现gpsd 全球定位系统守护进程在我的服务器上运行很久以前......我最终没有使用它。 GPS 设备返回的有趣值之一是它正在监听的卫星的方位角和仰角。 我可以使用 JMP 的套接字连接到 gpsd 端口来获取这些值(之前我使用 Python 脚本在服务器上写入一个文件,我后来将其复制到 JMP。) 但是要渲染类似的东西这,我需要一个地球模型和 GPS 卫星……这就是这篇文章。 运行附带的 JSL;它制作了一个可以用鼠标旋转的 3D 模型。 这张照片是静态的,但显示了地球的相对大小和与 GPS 卫星轨道的距离。
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.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.海拔 20,200 公里,半径 26,600 公里。 每个恒星日有两个完整的轨道。
通常 SimpleEarth 位图以平面图形显示:
Example of SimpleEarth from the Air Traffic.JMP sampleExample of SimpleEarth from the Air Traffic.JMP sampleExample of SimpleEarth from the Air Traffic.JMP sampleExample of SimpleEarth from the Air Traffic.JMP sampleAir Traffic.JMP 样本中的 SimpleEarth 示例
但是位图也可以作为八个图块提供(以低分辨率形式)。 JSL 将这些图块组合成单个位图,并将它们的大小调整为更低的分辨率(为了性能),并从一组四边形的多边形构建球体模型,每个角都有不同的颜色像素。 3D 引擎显示多边形平滑着色,并具有平滑的照明效果。 对于 1 度多边形,只有 360x180 == 64,800 个多边形,性能仍然相当不错。 创建模型确实需要大约 10 秒,但 JSL 将模型保存在可重用的显示列表中。 JSL 的相当一部分是从 JMP 中的两个 3D 示例中借用和修改的:MaterialAndLight.jsl 和 Sheet.jsl。 在 Samples/Scripts/Scene3D 目录中查找它们。
还, @jlsalmon有一个类似的主意,使用点而不是阴影多边形。