我有兴趣建立一个用于网络的太阳系3D模型(可能是AS3和papervision),并且一直在研究如何编码行星位置。我的想法是从美国国家航空航天局下载已计算的位置,因为计算位置我自己看似但是过于复杂。我不确定我是否应该使用以helio为中心或以地球为中心的编码。
我想知道是否有任何有此经验的人。哪种方法会更好?美国宇航局的JPL网站似乎将我们太阳系中所有主要机构的位置视为以地球为中心。虽然将Voyager和Mars Lander任务添加到模型中时,我可以看到这会成为一个问题吗?
非常欢迎任何反馈,评论和链接。
编辑:我有一个使用日心坐标的粗略模型,但是我无法找到这种格式的所有行星的坐标。
更新
我没有太多的细节来提供知识,因为我真的不知道我在做什么(从空间的角度来看)。我想搞定3D编程,对空间很感兴趣。我的想法是,我将首先制作一个粗糙的太阳系模拟器,首先是所有行星及其轨道运行器(最初可能不包括卫星)。也许包括新闻聚合器和一些新闻/资源链接等。一般的想法是允许人们点击并对去月球和火星(作为首发)感到非常兴奋。
从长远来看,我希望能够增加卫星和月球任务(及时向后滚动到70年代并看月亮任务)。
所以回答Arrieta的问题,这个想法不是计算日食,而是建立一个易于接近的互动空间探索,并在途中学习一些3D和空间相关的东西。
答案 0 :(得分:4)
很高兴你想建立自己的模拟器,但根据你想做的事情,这可能远非一件容易的事。最简单的方法如下:
现在,你为什么要这样做?如果你想观察行星的轨道,那就是它。你完成了。如果你想计算几何事件(如日食,视线或照明),那么你就是在一个完全不同的球类游戏中。那是航天,并不简单。
请更具体。你对“地心”或“日心说”坐标的区别确实没有太大的困难。如果您具有日心框架中的所有状态,则可以通过简单的矢量减法计算地心框架。那不是问题!问题还有一千多个,但你需要具体,这样我们才能提供更多的指导。
JPL几十年来一直提供高质量的星历表,我们拥有一支由优秀人才组成的完整团队。这是最难对付的事情之一!
再次提供更多详细信息或查看其他信息来源。
请谷歌“太阳能系统模拟器”(在这里,在JPL完成),看看它是否满足您的需求。
干杯。
答案 1 :(得分:2)
值得您查看ASCOM Platform(我们还有一个名为ASCOM Answers的堆栈交换网站)。
ASCOM平台有几个有用的库来完成这类工作。
USNO / NOVAS的东西最初是用C语言编写的,我们将它包装在.NET中,以方便C#和VB使用。
作为一个额外的奖励(实际上它是ASCOM的 raison d'être),平台让您可以轻松控制望远镜这样的东西,它被微软的World Wide Telescope精确地用于那个目的。我可以为你的模型做一个有趣的扩展,以便能够将望远镜指向事物。
答案 2 :(得分:1)
我可能会以日心坐标开始(好吧,我做了一会儿)并让一些行星运转起来。但是迟早你会想要写一个以日心为中心的地心坐标转换程序,以及它的反转。对于某些物体,例如人造卫星,地心坐标将更容易处理。
答案 3 :(得分:0)
您可以使用astro-phys api为所有行星获取JSON格式的状态向量。它使用JPL的de406计算它们,因此它非常准确,并使用太阳系重心。
虽然,如果您知道太阳相对于地球的位置并且您处于地心模型中,您可以从所有物体(包括地球)中减去太阳的位置,使其成为日心说。