Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 49, средняя оценка - 4.76
zmei88
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 10
#1

Попадание точки в эллипс (окружность) - C++

30.04.2010, 21:28. Просмотров 6348. Ответов 5
Метки нет (Все метки)

Интересует как возможно реализовать на языке Си попадание точки с произвольными координатами в эллипс с заданными расстояния от одного конца до другого, ну или хотя бы тоже самое сделать, но для окружности с заданным радиусом. Если честно просто не знаю как к этому подойти, может кто знает где прочитать или как это реализовать, просто сроки поджимают...Буду очень благодарен за помощь...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.04.2010, 21:28     Попадание точки в эллипс (окружность)
Посмотрите здесь:

C++ Определить номер точки, через которую проходит окружность с центром в начале координат, внутрь которой попадают все оставшиеся точки.
Попадание точки в треугольник C++
Попадание точки в заштрихованную область C++
C++ Попадание точки в области
C++ Попадание точки в обалсть
C++ Попадание точки
C++ Попадание точки в плоскость
Попадание точки в ромб C++
Задача на попадание в окружность C++
Попадание точки в область C++
Попадание точки C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SorokinWS
67 / 67 / 1
Регистрация: 02.11.2009
Сообщений: 334
30.04.2010, 21:50     Попадание точки в эллипс (окружность) #2
Цитата Сообщение от zmei88 Посмотреть сообщение
эллипс с заданными расстояния от одного конца до другого
Итак, мы имеем эллипс, с расстоянием по горизонтали 2a и по вертикали 2b заметьте, именно и 2b так как мы будем работать с половиной расстояния.

Эллипс задаётся по формуле: x^2/a^2+y^2/b^2=1
Подставляем координаты точки в уравнение и смотрим:
1. Уравнение = 1 - точка лежит на эллипсе.
2. Уравнение < 1 - точка лежит в эллипсе.
3 Уравнение > 1 - точка лежит вне эллипса.
zmei88
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 10
30.04.2010, 22:13  [ТС]     Попадание точки в эллипс (окружность) #3
хммм....тогда для окружности насколько я понимаю можно точно таким же способом сделать??

Добавлено через 14 минут
а еще такой вопрос, если мы повернем эллипс на некоторый угол, условие проверки изменится??
SorokinWS
67 / 67 / 1
Регистрация: 02.11.2009
Сообщений: 334
30.04.2010, 23:07     Попадание точки в эллипс (окружность) #4
Цитата Сообщение от zmei88 Посмотреть сообщение
хммм....тогда для окружности насколько я понимаю можно точно таким же способом сделать??
Да, окружность - это частный случай эллипса. Просто a и b будут равны.

Цитата Сообщение от zmei88 Посмотреть сообщение
а еще такой вопрос, если мы повернем эллипс на некоторый угол, условие проверки изменится??
В этом случае, следует использовать преобразование мировых координат, в координаты элипса.
Суть на рисунке:

1.Получаем координаты точки a в мировых координатах.
2.Преобразуем мировые координаты Точки в координаты эллипса.
По формулам:
X. = ((Xмир2*cos(A))+(Yмир2*sin(A)))-Xмир1
Y. = ((Yмир2*cos(A))+(Xмир2*sin(A)))-Yмир1

3.Проводим проверку по формуле:
x^2/a^2+y^2/b^2=1
Миниатюры
Попадание точки в эллипс (окружность)  
Delf1n
Сообщений: n/a
13.05.2012, 13:35     Попадание точки в эллипс (окружность) #5
Цитата Сообщение от SorokinWS Посмотреть сообщение
X. = ((Xмир2*cos(A))+(Yмир2*sin(A)))-Xмир1
Y. = ((Yмир2*cos(A))+(Xмир2*sin(A)))-Yмир1
неверно
X. = ((Xмир2*cos(A))-(Yмир2*sin(A)))-Xмир1
Y. = ((Yмир2*cos(A))+(Xмир2*sin(A)))-Yмир1

без визуализации такую ошибку трудно отловить.

тема старая, но никто не указал на ошибку, по поиску можно наткнуться на неё и потратить не мало времени
77Bender77
18 / 18 / 0
Регистрация: 16.12.2010
Сообщений: 145
22.10.2012, 18:38     Попадание точки в эллипс (окружность) #6
Цитата Сообщение от SorokinWS Посмотреть сообщение
1.Получаем координаты точки a в мировых координатах.
а как их получить??
Yandex
Объявления
22.10.2012, 18:38     Попадание точки в эллипс (окружность)
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru