我有兴趣绘制行星的位置图。在Mac OS X上有哪些API和其他方法可以实现这一点?
答案 0 :(得分:6)
如果你想要原始矢量天体测量,那么你可以看看美国海军天文台矢量天体测量子程序(NOVAS)。源代码在C和Fortran中可用,有人也将它移植到Python,我目前正在使用C#端口。 NOVAS例程支持计算主要和次要行星和恒星的位置。
您可以在US Naval Observatory website找到源代码。
答案 1 :(得分:5)
NAIF SPICE Toolkit适用于多种平台和多种语言。它非常实用且稳定。它也用于过去,现在和未来的太空探索任务,如NASA和ESA的东西。想知道海王星现在在哪里吗?没问题。想知道你应该把你的望远镜指向哪里看海王星,因为光到达的地方是海王星曾经的地方?仍然没问题。这不仅用于实际的太空探索,它也被Celestia和其他流行的软件使用。
答案 2 :(得分:2)
在C上,我最好的推荐是code by S. L. Moshier。作为一名天文学家,我使用Java,并且正在开发一个名为JPARSEC的库,它使用了Moshier的算法,效果很好。
答案 3 :(得分:1)
我见过的最接近的是Google Sky API:
http://googlemapsapi.blogspot.com/2007/12/maps-from-another-world.html
可能需要花一点时间才能得到你需要的东西,但我的谷歌手机上有一个应用程序,根据手机的位置和它的方向,在屏幕上绘制行星和星星。您必须从您的应用程序中查询他们的Web服务,但它具有副作用,即它与平台无关。
请参阅以下示例应用程序:
答案 4 :(得分:1)
如果您有兴趣,可以查看my VSOP87 C API,看看我开始的是否适合您的需求。 VSOP87库已经完成,我还没有完成Doxygen文档。
答案 5 :(得分:0)
我已经开始构建一个日心游戏库,用于根据任何时间计算行星,卫星和起点的位置。它已经处于起步阶段,但我已经将它用于JDE2000(2000年1月1日)+ - 1500年,具有相当好的准确性。我现在正处理月球位置,倾斜和间距,然后将关注明星。
它被放入Torque 3D引擎中。它是用TorqueScript(一种类似于dumbed-down JavaScript / C ++混合的脚本语言)编写的,因此它应该很容易重新创建。
我发布了当前版本的开源:http://wecreategames.com/blog/?p=233
采用算法并以JavaScript或服务器端语言重新创建它们并使用Web服务API包装它们应该非常容易。让我知道它是否有帮助!
答案 6 :(得分:0)
天文学家正在努力开发强大的数据共享API。您应该首先浏览The National Virtual Observatory中的资源。