Я довольно долго искал подходящее математическое решение для своей пушки, стреляющей снарядом по движущейся цели с учетом силы тяжести.Я нашел решение для определения угла, под которым должна быть выпущена пушка, исходя из положения пушки, положения цели и начальной скорости.Формула описана здесь: http://en.wikipedia.org/wiki/Trajectory_of_a_projectile#Angle_.CE.B8_required_to_hit_coordinate_.28x.2Cy.29.
Это прекрасно работает.Однако моя цель движется, поэтому, если я стреляю по цели, а снаряду требуется несколько секунд, чтобы добраться до места назначения, цель давно исчезла.Положение цели х можно определить по времени.Допустим, что: x = 1000 - (10 * t) , где t - время в секундах.Y можно описать так: y = t .
Проблема в том, что t зависит от угла, из которого стреляет пушка.
Поэтому мой вопрос: Как я могу изменить формулу, как описано в вики, чтобы она учитывала движущуюся цель?
Кроме того, я мог искать неправильные слова здесь или в Google, но я этого не делалнайдите любое решение, описывающее эту точную проблему.
Заранее благодарим вас за ваше умственное время!
В ответ на ваши комментарии.Я хочу выстрелить сейчас, и цель находится в диапазоне, учитывая скорость.Я думаю, что это все ограничения, которые применимы к этой проблеме.
В качестве ответа на ответ, давайте взглянем на этот пример:
Пушка находится в {0, 0} ине двигаетсяСтартовая скорость составляет 100 м / с.Цель находится на отметке {1000, 0} и движется со скоростью 10 м / с к пушке (v = -10 м / с).
Какой угол следует использовать, чтобы поразить движущуюся цель, когда я хочустрелять при t = 0 (немедленно)?
Если я стреляю без учета скорости цели, я прицеливаюсь в {1000, 0}, и угол можно рассчитать по указанной формуле.Но он с треском пропустит цель, потому что она движется.
Как и предположила Бета, я мог бы прицелиться, например, {500, 0}, посчитать, сколько времени потребуется снаряду для достижения этих координат (скажем, 5 секунд) и подождите, пока цель не окажется на расстоянии 5 секунд от {500, 0}, равного {550, 0}.Но это означает, что мне нужно подождать 450 или 45 секунд, прежде чем я смогу стрелять из пушки.И я не хочу ждать, потому что цель убивает меня в это время.
Я действительно надеюсь, что это даст вам достаточно информации, чтобы пойти с.Я бы предпочел какое-то математическое решение, но все, что могло бы привести меня к стрельбе «прямо сейчас» и «точно в цель», также очень ценится.