@DjSapsan

Как найти вектор для «перехвата» другого вектора в будущем?

Есть два объекта - мяч и игрок. Вектор движения мяча известен и равен V. Максимальная скорость игрока равна Sm. Как найти вектор, по которому нужно двигаться игроку, чтобы перехватить мяч за кратчайшее время?5c27ce23687d3886692738.jpeg
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Пусть xм0 и yм0 - начальные координаты мяча, xи0 и yи0 - начальные координаты игрока, Vмx и Vмy - компоненты скорости мяча, Vи - скорость игрока (скалярная).
Тогда в момент времени t мяч будет находится в точке
xмt = xм0 + Vмx · t
yмt = yм0 + Vмy · t
Расстояние до начальной точки игрока будет
L2 = (xи0 - xмt)2 + (yи0 - yмt)2 = (xи0 - xм0 - Vмx · t)2 + (yи0 - yм0 - Vмy · t)2 = (Vи · t)2
Раскладываем квадраты
(xи0 - xм0)2 - 2·(xи0 - xм0)·Vмx·t + Vмx2·t2 + (yи0 - yм0)2 - 2·(yи0 - yм0)·Vмy·t + Vмy2·t2 = Vи2·t2
Составляем квадратное уравнение по t
(Vмx2 + Vмy2 - Vи2)·t2 - 2·((xи0 - xм0)·Vмx + (yи0 - yм0)·Vмy)·t + ((xи0 - xм0)2 + (yи0 - yм0)2) = 0
Решаем уравнение, получаем значение t
Подставляем t в первую пару уравнений, получаем точку перехвата.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
IVARIANT Санкт-Петербург
от 180 000 до 250 000 руб.
Seldon Нижний Новгород
от 75 000 руб.
от 50 000 до 100 000 руб.