Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как рассчитать координаты столкновения двух прямоугольных четырехугольников?

Есть два прямоугольных четырехугольника с известными сторонами, положением, скоростью и направлением движения. Известно что прямоугольники столкнуться. Как рассчитать координаты отрезка контакта?
СтолкновениеДвижение тела+1
Василий Григорьевич
  ·   · 8,3 K
Программист  · 21 окт 2022
Сперва введем обозначения для прямоугольников: A(x1(t),y1(t);x2(t),y2(t);x3(t),y3(t);x4(t),y4(t)) и B(xx1(t),yy1(t);xx2(t),yy2(t);xx3(t),yy3(t);xx4(t),yy4(t)). 
Тут надо решить две задачи. Первая: найти время столкновения t0 (xi==xxj или yi==yyj ; 1<=i,j<=4) . 
Вторая: из четырех точек(по две от A и B) с одинаковой X (или Y если yi==yyj), выбрать две точки (по одной от A и B), которые и будут координатами отрезка столкновения. Надо просто отбросить отбросить минимальное и максимальное число.
Пример.
A(5,1; 10,1; 5,3; 10,3) B(7,3; 10,3; 7,6; 10,6). Берем четыре точки 5,3; 10,3 ; 7,3; 10,3 . Из 5, 10, 7, 10 оставляем 7 и 10. Координаты отрезка столкновения: 7,3; 10,3.
P.S. Случай, вырождения отрезка в точку выявляется уже при решении первой задачи. То есть, вторую задачу при этом не применяют.
младший научный сотрудник ФТИ им. Иоффе  · 19 окт 2022  ·
astropolytech
А что не получается? Ничего сложного нет - просто решить два линейных уравнения - когда х координата правой грани зеленого сравняется с х координатой левой грани синего, и когда у координата верхней грани синего сравняется с... Читать далее
астрофизическое образованиеПерейти на vk.com/astropolytech
Лучший
Научные заметки о жизни: zen.yandex.ru/id/5c434983...  · 27 окт 2022
Проводим прямые по которым двигаются ближайшие углы прямоугольников. Точка пересечения - один из концов искомого отрезка. Считаем моменты, в которые углы через эту точку пройдут T1 и T2. Пусть Т1>Т2, тогда вторым концом отрезка... Читать далее
Программист. Ерундит.  · 19 окт 2022
Переходим в систему координат, в которой один из прямоугольников покоится. Тогда второй на него наезжает, что для решения гораздо проще. Если при столкновении сторона, которой прямоугольник ударяет по неподвижному, параллельна... Читать далее
Как получить координаты отрезка, который в результате получится? Да отрезок может быть нулевой(точка), но и у него... Читать дальше
Инженер путей сообщения – строитель  · 19 окт 2022
Самое простое решение: c некоторым шагом по времени пересчитывать новое положение прямоугольников до тех пор, пока задача о пересечении двух прямоугольников не будет иметь решения. Как только выявлено пересечение — оно и будет... Читать далее
Нужно именно точное решение причем заблаговременно, а не путем моделирования столкновения. Про систему уравнений... Читать дальше