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

C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.77
Orphelin
1 / 1 / 0
Регистрация: 22.06.2011
Сообщений: 14
#1

Collision detection или определение столкновений - C++

22.06.2011, 00:59. Просмотров 1647. Ответов 3
Метки нет (Все метки)

Решил таки написать физику дня небольшой игрушки, начал с малого и тут же закончил) имеется массив с координатами отрезков и некая точка в пространстве. Нужно определить лежит ли точка на отрезке. так вот как это определять? Для примера отрезок х(1,4) y(4,1) и точка p(2,3). Как определить что она принадлежит отрезку?
P.S. с геометрией совсем никак(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2011, 00:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Collision detection или определение столкновений (C++):

Определение цифры или буквы - C++ Builder
При нажатии алфавитной клавиши (буквы) в Edit1 добавляется соответствующий символ, а при нажатии цифровой клавиши (цифры) в Edit2...

Определение цифры или буквы - C++ Builder
Помогите сделать так, чтобы при нажатии алфавитной клавиши (буквы) в Edit1 добавляется соответствующий символ, а при нажатии цифровой...

модуль face detection на C++ - Visual C++
Добрый день. Есть достаточно нетривиальная проблема. Если поможете советом, - буду рад. Если отдаленным кодом, - буду счастлив=) ...

Определение фокуса программы: активен или нет - C++ WinAPI
привет всем! вопрос такой: есть два компа, соеденины локальной сетью, на одном из компов есть определенная программа. Так вот мне нужно...

Избегать столкновений двух кругов, движущихся с использованием разных потоков - C++ WinAPI
Есть код который создает два (потока) круга, и они движутся с разной скоростью. Необходимо программно избежать их столкновений. (Скорее...

Определение вида процесса (служба или обычный процесс) - C++ WinAPI
Привет, помогите пож. определить вид процесса. Гуглил, но ответа так и не нашел Добавлено через 6 минут не нужен код, просто...

3
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
22.06.2011, 10:05 #2
составить уравнение прямой по концам отрезка
если координаты точки удовлетворяют уравнению прямой, то узнать расстояния от точки до каждого из концов отрезка
если расстояния меньше длины отрезка или одно из них равно длине отрезка, то точка принадлежит отрезку
0
outoftime
║XLR8║
510 / 432 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
22.06.2011, 17:25 #3
accept, плохой вариант т.к. операции с даблами неточные, но можно сравнивать задавшись абсолютной погрешностью, обычно 1е-9 (выбирается для каждого случая индивидуально).

Я бы оставил:
Цитата Сообщение от accept Посмотреть сообщение
составить уравнение прямой по концам отрезка
если координаты точки удовлетворяют уравнению прямой
и добавил проверку не вылазит ли точка за границы отрезка по любой оси.
0
accept
4823 / 3244 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
23.06.2011, 02:08 #4
Цитата Сообщение от outoftime
accept, плохой вариант т.к. операции с даблами неточные
ну, неточные и что ?

Цитата Сообщение от outoftime
но можно сравнивать задавшись абсолютной погрешностью
сравнивать что ?

уравнение прямой получается с целыми коэффициентами
точки у него тоже с целыми координатами

Цитата Сообщение от outoftime
и добавил проверку не вылазит ли точка за границы отрезка по любой оси
там не сказано, какая точка слева, а какая справа, какая сверху, а какая снизу
0
23.06.2011, 02:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.06.2011, 02:08
Привет! Вот еще темы с ответами:

Определение столкновений в простой 2D игре - C++
Пишу 2D игру (что-то вроде марио :D ). В ней есть игрок и всякие предметы. Надо сделать функцию которая будет проверять не вошёл ли игрок...

SQL parse error: eoF in string detection - C++
Не знаю в правильно ли разделе я создал тему, но у меня возникает "SQL parse error: EOF in string detection" здесь: case ukInsert: ...

Обработка столкновений - C++
Хочу сделать платформер но не могу сделать врагов , которые будут двигаться вертикально Когда враг двигается вверх, то все...

Определение палиндром или нет - C++
Здравствуйте. Данна программа, которая определяет является ли число полиндромом или нет. Сижу разбираю код программы и не могу понять как в...


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

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

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