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

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

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

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

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

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

Задача на попадание в окружность - C++
13 номер. 10 раз стреляет, координаты рандомно, поподание 10 очков. Общее кол-во очков найти. Подскажите пожалуйста с кодом. Вот...

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

Попадание точки - C++
помогите решить задачи

Попадание точки - C++
Уважаемые форумчане попрошу вас подсказать каким образом можно решить эту задачу? "Определить попадает ил заданная точка в область...

Попадание точки в ромб - C++
Определить попадает ли в выделенную область (рисунок). Нашел вот такую формулу для ромба: a * |Yt|+b * |Xt|<a * b; где A= y2 - y1; B= - (x2...

Попадание точки в обалсть - C++
Дана точка на плоскости с координатами (x,y) составить программу,которая выдает одно из сообщений - Да,Нет,На границе-в зависимости от...

5
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 - точка лежит вне эллипса.
0
zmei88
0 / 0 / 0
Регистрация: 10.01.2010
Сообщений: 10
30.04.2010, 22:13  [ТС] #3
хммм....тогда для окружности насколько я понимаю можно точно таким же способом сделать??

Добавлено через 14 минут
а еще такой вопрос, если мы повернем эллипс на некоторый угол, условие проверки изменится??
0
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
0
Миниатюры
Попадание точки в эллипс (окружность)  
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 в мировых координатах.
а как их получить??
0
22.10.2012, 18:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2012, 18:38
Привет! Вот еще темы с ответами:

Попадание точки в плоскость - C++
2.2 Попадание точки в плоскость Даны вещественные числа x и y. Определить принадлежит ли точка с координатами (x;y) заштрихованной...

Попадание точки в области - C++
Приветствую, уважаемые форумчани. Помогите с задачкой . Для действительных х и у, определяющих координату точки A(x,y) в декартовых...

Попадание точки в треугольник - C++
Есть полигон, представляющий из себя треугольник на основе прямоугольника, т.е. вершины треугольника - левый нижний и правый нижний углы...

Попадание точки в область - C++
В общем такой вопрос. У нас есть множество точек, которые являют собой замкнутую ломаную. Эта ломаная всегда замкнута, но мы не знаем,...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

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