|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Feb 2014
Сообщений: 57
|
Сместить мяч при отскоке от стены , чтобы убрать погрешность
Здравствуйте, появилась проблема, мяч летит в стену под углом,
при ударении в стену, он немного "входит" в нее(получается 2 точки пересечения со стеной), нужно СМЕСТИТЬ его обратно (по направлению противоположному вектору движения) на такое расстояние чтобы была одна точка соприкосновения со стеной, и уже потом менять вектор движения как угол падения = углу отражения. Так вот каким образом найти это СМЕЩЕНИЕ, чтобы не накапливалась ошибка. |
|
|||||
Регистрация: Dec 2014
Сообщений: 312
|
Найти точку пересечения отрезка стены с отрезком перемещения мяча.
http://stackoverflow.com/questions/5...ents-intersect |
|
|||||
Регистрация: Feb 2014
Сообщений: 57
|
Вот нарисовал рисунок
О2 - точка где сейчас мяч, должен он в итоге оказаться в О1, чтобы его можно было из этой точки отразить. O2A - дистанция между центром мяча и стеной, O2B - радиус мяча, A - точка идеального касания мяча и стены(когда мяч не вошел в стену и центр его в О1) V - вектор скорости мяча, нужно найти вектор O2 - O1, Он равен DB. как видно из рисунка, точка С - не точка касания, и соответственное ее нахождение ничего не даст, а хотя нет, с помощью нее можно будет найти длину O2C , и по пропорции треугольников ADB и ACO2 найти DB, щас буду пробовать.. Последний раз редактировалось Marlin; 20.08.2015 в 10:47. |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
В общем случае задачу решает ТРО(Теорема о разделяющих осях)Она дает вектор наикротчайшего выхода одного тела из другого.В инете был супер годный мануал по ней на примере игры N но похоже его выпилили.Очень жаль.Может у кого-нибудь бэкап сохранился? Такие статьи нельзя терять
|
|
|||||
Может эта статья вам поможет http://www.flasher.ru/forum/blog.php?b=182
|
|
|||||
Регистрация: Jan 2013
Сообщений: 322
|
Цитата:
http://www.dyn4j.org/2010/01/sat/ тро не делает того, что нужно тсу. |
|
|||||
Регистрация: Feb 2014
Сообщений: 57
|
Цитата:
Последний раз редактировалось Marlin; 20.08.2015 в 12:26. |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Цитата:
Цитата:
Цитата:
Или не устраивает,что вектор наикротчайшего выхода(ВНВ) не всегда будет колинеарен направлению движения?Тогда можно считать проекцию ВНВ на скорость и двигать шар на полученный результат.Хотя если шар не слишком быстро носится ВНВ будет почти параллелен скорости. |
|
|||||
Регистрация: Feb 2014
Сообщений: 57
|
Цитата:
шар носится не быстро, но много ударяется, и нужно чтобы он после множества ударов двигался без погрешности. А это ПОЧТИ - накопление погрешности. |
|
|||||
Регистрация: Oct 2006
Сообщений: 2,281
|
Цитата:
|
Часовой пояс GMT +4, время: 12:35. |
|
« Предыдущая тема | Следующая тема » |
|
|