![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
БохЪ
Форумчанин
Регистрация: 30.09.2009
Сообщений: 724
|
![]()
Доброго всем! Я конечно понимаю что всех уже задрал со своей геометрией, но мне все таки нужно получить ответ еще на один вопрос
![]()
В планах порабощение вселенной...
Последний раз редактировалось zumm; 10.07.2010 в 11:18. |
![]() |
![]() |
![]() |
#2 |
Eclipse Foundation
Старожил
Регистрация: 19.09.2007
Сообщений: 2,604
|
![]()
И что тут сложного? Проверяете координаты точки, если они меньше по x нижних углов и больше по x верхних углов, тогда проверяете y координаты, если больше левой границы и меньше правой - тогда точка в области. Если хоть одно условие не совпадает - точка вне области.
|
![]() |
![]() |
![]() |
#3 |
БохЪ
Форумчанин
Регистрация: 30.09.2009
Сообщений: 724
|
![]()
Дело в том что область может быть и под углом, тоесть к примеру x вернего угла 15, а х нижнего 10. Область является квадратной, но может быть повернута под любым углом.
В планах порабощение вселенной...
|
![]() |
![]() |
![]() |
#4 |
Заблокирован
Старожил
Регистрация: 20.07.2008
Сообщений: 4,032
|
![]()
Тогда нужно записать четыре уравнения прямой (y=ax+b) и сравнивать положение точки с каждой из них.
|
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,091
|
![]()
Если можно использовать WINAPI, то самый простой вариант: использовать функцию PtInRgn. Создаёте квадратный регион по точкам своим и проверяете вхождение точки в этот регион. 5 строк кода всего-лишь. Когда писал 2Д редактор с вращением и прочими возможностями, то скорость проверки посредством этой функции была достаточно неплохая. Даже курсор менял в зависимости от нахождения мышки над объектом и тормозов не было. Ну и из бонусов: возможна проверка вхождения в любую фигуру, не только квадрат.
Так же можно повернуть этот квадрат на угол -A (где A - текущий угол поворота), получим координаты вершин в "нормальном" положении. Точно так же, вокруг той же точки на тот же угол -А поворачиваем и точку. Дальше идёт банальное сравнение, как при неповернутом квадрате. Наверно, не самый оптимальный вариант, но работать будет и просто реализовать, раз уж поворот фигур уже есть. Последний раз редактировалось pu4koff; 10.07.2010 в 12:40. |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 01.09.2007
Сообщений: 747
|
![]()
Подскажу идею.
По координатам определяешь уравнение фигуры. По уравнению проводишь анализ, проходит через точку или нет. Здесь более развернутый ответ на вопрос. (нажми "сохранить как", там djvu файл) И кто теперь будет говорить, что вузовская математика (хотя бы в лице аналитической геометрии) программисту не нужна?
Никому не верьте.
|
![]() |
![]() |
![]() |
#7 | ||
Участник клуба
Регистрация: 06.03.2009
Сообщений: 1,346
|
![]() Цитата:
Цитата:
Последний раз редактировалось Вадим Буренков; 10.07.2010 в 18:24. |
||
![]() |
![]() |
![]() |
#8 | |
Студент, не
Старожил
Регистрация: 29.01.2009
Сообщений: 2,067
|
![]()
Поищите "вхождение точки в полигон" или как-то так...
Цитата:
![]()
I am the First of Cyber Evolution...
I am the First to Program your Future... |
|
![]() |
![]() |
![]() |
#9 |
БохЪ
Форумчанин
Регистрация: 30.09.2009
Сообщений: 724
|
![]()
МдЭ ребятА, не помогли вы мне на этот раз, пришлось и правда читать матчасть и использовать матрицы...
Код:
В планах порабощение вселенной...
Последний раз редактировалось zumm; 10.07.2010 в 22:17. |
![]() |
![]() |
![]() |
#10 |
Заблокирован
Старожил
Регистрация: 20.07.2008
Сообщений: 4,032
|
![]()
Матрицы ? Где?
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Геометрия | zumm | Свободное общение | 3 | 07.07.2010 18:37 |
Си геометрия | Денни | Помощь студентам | 11 | 05.03.2010 09:41 |
MDIChild снова и снова... | Siber_Dec | Общие вопросы Delphi | 2 | 13.12.2009 03:24 |
Геометрия | Levsha100 | Помощь студентам | 5 | 29.09.2009 09:56 |