В трехмерном пространстве, шарик диаметра d1 перемещают из точки x1, y1, z1 в точку x2, y2, z2 (по прямой).
Но возможно на этом отрезке, шарик столкнется с другим шариком (непожвижным), у которого известны его координаты x3, y3, z3 и диаметр d3.
Как определить, столкнутся ли шарики?
Последний раз редактировалось OverClocker-New 23.02.2008 16:33, всего редактировалось 1 раз.
Member
Статус: Не в сети Регистрация: 19.09.2003 Откуда: нижний
второй то шарик стоит! то есть можно!
надо определить расстояние от второго шара до линии перемещения первого и если оно меньше или равно суммы радиусов двух шаров И второй шар находится между точками 1 и 2 - то столкнутся!
ps надеюсь первый перемещается по прямой?! иначе однозначного ответа нет!
Ну давай посмотрим, я плохо владею геометрией, поэтому буду думать чисто логически.
И так у нас есть некая линейная траектория движения. Предположим, что наш объект будет двигаться t единиц времени. Тогда расстояние, которое он будет преодалевать по каждым осям в единицу времени:
x = ( x1 - x2 ) / t
y = ( y1 - y2 ) / t
z = ( z1 - z2 ) /t
Нам известны диаметры твоих двух шаров и знаем, что если расстояние между объектами станет меньше, чем:
d = (d1 / 2) + (d2 / 2)
то они столкнулся.
Таким образом перемещая объект по времени от 0 до t, мы знаем его местоположение в каждый момент времени. И нам остается вычислить для каждого момента времени t расстояние между двумя точками, если оно меньше, чем d, то значит объекты столкнулся.
Вот и поучается все довольно легко, расстояние между двумя точками можно определить, зная только теорему пифагора, она для трехмерного пространства не меняется насколько я помню.
sashar2 1-ый шарик не движется во времени от одной точки к другой, он перемешается скачками, сначала он находится в 1-ой точке, потом сразу во 2-ой, но на пути может быть другой шарик
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения