计算轨道上点的x,y坐标

Calculate x,y coordinate of point on orbit

我想计算轨道上点的 x,y 坐标。我有半径(例如 1)、轨道中心坐标(0,0)和在轨道上转一整圈所需的时间(例如 2)、物体的起始坐标(-radius,0),我想要在 1 天后计算 x 和 y,所以它应该在半径 0 上。但是没有角度怎么计算呢?

您必须首先将轨道转换为旋转速率,这将为您提供 θ(t) 的方程式,其中 tθ(t) 是在时间 t 时轨道中的角度(通常以弧度为单位)。该职位将由

给出
X ← r·cos(θ(t)) + x0
Y ← r·sin(θ(t)) + y0

其中 r 是您的轨道半径(您指定的是 1),(x0, y0) 是轨道的中心(您指定的是 (0,0) ).

如果您希望该点具有恒定的旋转率并在恰好 1 天后到达 (r, 0),那么您的 θ(t) 将是以下形式的函数:

θ(t) ← 2·n·π·t + θ(0)

其中 t 是以天为单位的时间,n 是一个整数值。 θ(0) 只是起始角度,在您的情况下为 π。如果您想使用非恒定旋转速率,还有无数其他此类函数可以允许这种情况发生,但您需要为此提供一些额外的要求。

一个更通用的函数将允许您指定恒定的旋转速率 α 并一次计算角度 t。这将采用

形式
θ(α, t) ← 2·α·π·t + θ(0)

因此在您的旋转速率示例中 2θ(2, t) = 4·π·t

在 Java 中编写此代码留作 reader 的练习。