Добро пожаловать, гость
:: алгоритмы  и методы :: :: олимпиадные задачи :: :: связь :: :: о сайте :: :: форум ::

Форум работает в режиме архива, только для чтения и поиска.
Архив 2004 Архив 2007 Архив 2013

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.10.2010, 00:57
Новичок

Отправить личное сообщение для Dmitry Посмотреть профиль Найти все сообщения от Dmitry
 
Регистрация: 15.09.2009
Сообщений: 6

Построение эллипса
Возможно ли построение эллипса по 4-м точкам, каждая из которых не лежит на прямых, соединяющих попарно три остальные?
Заранее спасибо.
  #2  
Старый 11.10.2010, 04:06
гость

 
Сообщений: n/a

Нет. Эллипс задается пятью параметрами (например, ценры фокусов и суммы расстояний от фокусов до точек на эллипсе). Чтобы их однозначно определить, нужно пять уравнений. А с четырьмя точками у вас всего четыре уравнения.
  #3  
Старый 11.10.2010, 04:32
Новичок

Отправить личное сообщение для Dmitry Посмотреть профиль Найти все сообщения от Dmitry
 
Регистрация: 15.09.2009
Сообщений: 6

...построение эллипса по 4-м точкам, каждая из которых не лежит на прямых, соединяющих...

можно построить, проверьте на бумаге с помощью карандаша
  #4  
Старый 11.10.2010, 04:49
гость

 
Сообщений: n/a

я не говорю что нельзя. утверждаю только что решение не единственное
  #5  
Старый 11.10.2010, 04:55
гость

 
Сообщений: n/a

ну точнее не может быть единственным. их либо 0, либо бесконечно много будет.
  #6  
Старый 11.10.2010, 11:36
Новичок

Отправить личное сообщение для Dmitry Посмотреть профиль Найти все сообщения от Dmitry
 
Регистрация: 15.09.2009
Сообщений: 6

Точно не 0, но может быть не единственным.
Уточню проблему: программу-картографический редактор нужно дополнить чертежным инструментом "Рисование эллипса" с несколькими вариантами входных параметров. По центру и осям - самый простой из них. Но нужен вариант который бы нарисовал эллипс, по точкам, лежащим на нем, пусть их будет и не 4.
  #7  
Старый 11.10.2010, 12:20
гость

 
Сообщений: n/a

Сообщение от Dmitry Посмотреть сообщение
По центру и осям - самый простой из них.
Э, у эллипса два центра. И не центрами их зовут, а фокусами.

Цитата:
Но нужен вариант который бы нарисовал эллипс, по точкам, лежащим на нем, пусть их будет и не 4.
По пяти можно.
Эллипс, как я уже сказал, можно параметризовать так: координаты фокусов и сумма расстояний от фокусов до точек эллипса (это свойство/определение эллипса, что эта сумма постоянна). Ну, вот значит и выписывается система уравнений:

|p[i] - A| + |p[i] - B| = d, i=1..5,
или
sqrt((x[i] - Ax)^2 + (y[i] - Ay)^2) + sqrt((x[i] - Bx)^2 + (y[i] - By)^2) = d, i=1..5,

где p[i] = (x[i], y[i]) - заданные точки (5 штук), A, B - фокусы, d - расстояние.

Решаешь ее и будет тебе счастье. Я бы не заморачивался с формулами, а просто решал численно - минимизируй невязку (сумму квадратов) между левой и правой частями, например, градиентным спуском.
  #8  
Старый 11.10.2010, 14:36
Новичок

Отправить личное сообщение для Dmitry Посмотреть профиль Найти все сообщения от Dmitry
 
Регистрация: 15.09.2009
Сообщений: 6

Сообщение от гость
Э, у эллипса два центра. И не центрами их зовут, а фокусами.
Центр вообще-то у эллипса то же есть и находится он посредине между фокусами
Под простым вариантом я имел ввиду начертить эллипс sqr(x-xc)/sqr(a)+sqr(y-yc)/sqr(b)=1, полуоси параллельны осям координат и достаточно знать центр (xc,yc) а полуоси a и b.

Сообщение от гость
sqrt((x[i] - Ax)^2 + (y[i] - Ay)^2) + sqrt((x[i] - Bx)^2 + (y[i] - By)^2) = d, i=1..5,

где p[i] = (x[i], y[i]) - заданные точки (5 штук), A, B - фокусы, d - расстояние.
Я составлял вчера такую систему, только i=1..4, тупил вчера, туплю и сегодня - я почему-то уверен что d однозначно вытекает из A, B
  #9  
Старый 11.10.2010, 14:42
MBo MBo вне форума
Местный

Отправить личное сообщение для MBo Посмотреть профиль Найти все сообщения от MBo
 
Регистрация: 21.09.2006
Адрес: Новосибирск
Сообщений: 1,374

Сообщение от Dmitry Посмотреть сообщение
я почему-то уверен что d однозначно вытекает из A, B
К двум гвоздям (фокусы) можно привязать ниточку любой длины и соответственно нарисовать разные эллипсы
  #10  
Старый 11.10.2010, 14:58
гость

 
Сообщений: n/a

Сообщение от Dmitry Посмотреть сообщение
Центр вообще-то у эллипса то же есть и находится он посредине между фокусами
Этого недостаточно.Еще надо знать угол наклон в общем случае.

Цитата:
Под простым вариантом я имел ввиду начертить эллипс sqr(x-xc)/sqr(a)+sqr(y-yc)/sqr(b)=1, полуоси параллельны осям координат и достаточно знать центр (xc,yc) а полуоси a и b.
Ну, надо было сразу об этом же говорить! У подобных эллипсов 4 степени свободы, соответственно достаточно 4 уравнений.
 


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Построение 3D моделей vaukalak Математические алгоритмы (другое) 1 11.09.2010 10:26
Построение фигуры гость Обработка изображений, звук, графика 1 27.03.2010 19:01
попадание точки отрезка внутрь эллипса d.dragon.n76 Математические алгоритмы 5 22.03.2010 00:45
Пересечение эллипса и прямоугольника megachuhancer Вычислительная геометрия 4 28.12.2009 16:44
Построение сечения Mozilla Вычислительная геометрия 1 10.01.2008 00:29