1

在我正在处理的项目中,用户创建一个圆圈并在该圆圈上选择一个点,P =(px,py)。为了这个问题,让我们假设圆的中心在 (0,0)。

在前面的步骤之后,用户可以改变椭圆的偏心率(因为它是一个圆,它实际上是一个 e=0 的椭圆)。当他改变偏心率时,椭圆应该保持其中心为 (0,0),并且点 P 应该保持在椭圆的圆周上。

谢谢!阿维亚德。

4

1 回答 1

3

如果我没记错的话,椭圆的半轴是 a = sqrt(x²+y²/(1-e²)) 和 b = a * sqrt(1-e²)

对于数值偏心率,我们有:

I) b = a * sqrt(1-e²)

椭圆上一点的方程是:

II) x²/a² + y²/b² = 1

II) 中的替换 I)

x²/a² + y²/(a² * (1-e²)) = 1

1/a² (x² + y²/(1-e²)) = 1

a² = (x² + y²/(1-e²))

a = sqrt(x² + y²/(1-e²))

于 2010-07-17T18:56:14.073 回答