Нахождение большой и малой осей эллипса, зная определенную точку P и ее эксцентриситет? - PullRequest
1 голос
/ 17 июля 2010

В проекте, над которым я работаю, пользователь создает круг и выбирает точку на этом круге, P = (px, py).Ради вопроса, давайте предположим, что центр круга находится в (0,0).

После предыдущих шагов пользователь может изменить эксцентриситет эллипса (поскольку это был круг, это был фактически эллипс с e = 0).В то время как он изменяет эксцентриситет, эллипс должен держать свой центр в (0,0), а точка P должна оставаться на окружности эллипса.

Спасибо!Aviad.

1 Ответ

3 голосов
/ 17 июля 2010

Если я не ошибся, то полуоси эллипса a = sqrt (x² + y² / (1-e²)) и b = a * sqrt (1-e²) ​​

для числового значенияэксцентриситет у нас:

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

, а уравнение для точки на эллипсе:

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

Подстановка I) в II)

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²))

...