Войти
ПрограммированиеФорумИгровая логика и ИИ

Стрельба с упреждением (задачка с векторами) (2 стр)

Страницы: 1 2
#15
19:40, 14 окт 2022

Aslan
Все равно ничего не понятно, хотя честно пытаюсь разобраться из интереса :)

> q>=-v

Что такое v?

> B=-p*N+q*T

Решение не зависит от b, что, очевидно, неверно.

Еще очень большая путаница в обозначениях. Например, у ТС с помощью T обозначен неизвестный вектор, для которого известно только направление, заданное единичным вектором t. В вашей же формуле "B=-p*N+q*T" фигурирует именно вектор T, который неизвестен. Вы имеете в виду t, а не T, верно?

Может быть, имеет смысл переписать выкладки более понятным образом, например так:

1. Вектор: A
2. Длина вектора: |A|
3. Скаляр: A

Ну или с помощью Latex, это было бы вообще идеально:

1. Вектор: \(\vec{A}\)
2. Длина вектора: \(\left| \vec{A} \right|\)
3. Скаляр: \(A\)

#16
20:38, 14 окт 2022

tegauss
Да, елки, опять протупил
>> q>=-v
> Что такое v?
Тут должно быть b

>> B=-p*N+q*T
> Решение не зависит от b, что, очевидно, неверно
B=-p*N+sqrt(b^2-p^2)*T

Смысл в том, что проецируем скорость обьекта на вектор до цели. Перпендикулярную составляющую надо погасить, отсюда b>=p, оставшаяся часть b, направленная к цели, sqrt(b^2-p^2)+q>=0 это чтобы снаряд двигался по к цели, а не от нее

> Ну или с помощью Latex,
Да сижу с телефона и заманался набирать

#17
20:54, 14 окт 2022

Aslan
А, вроде понял. Да, такой вариант тоже возможен.

#18
17:14, 15 окт 2022

Вы чо тут развели? Ещё бы через расчет орбиты Нептуна начали бы вычислять.
Это геометрия за восьмой класс
sinA = BC * sinB / AC.
http://www.unity3d.ru/distribution/viewtopic.php?f=105&t=30505

#19
17:52, 15 окт 2022

sledo
29e411aff289b329da3c07e3431ce114 | Стрельба с упреждением (задачка с векторами)

#20
9:18, 16 окт 2022

sledo
что такое BC, AC, B?

#21
10:20, 16 окт 2022

Aslan это его ответ видимо, ник такой же

разобрался в методе sledo, работает

Дано: s и b — скорости цели и снаряда, β — угол между скоростью цели и направлением на цель от цели на стрелка
Найти: δ — угол упреждения, по теореме синусов sin(δ) = s * sin(β) / b

Стрельба с упреждением (задачка с векторами) 3 | Стрельба с упреждением (задачка с векторами)
#22
11:03, 16 окт 2022

ninja
Да, действительно
sin(sigma)/s=sin(beta)/b
sin(sigma)=sin(beta)*s/b
если справа <1 или >-1 реш-я нет
и sigma 2 знач-я: asin(...) или PI-asin()

#23
19:24, 16 окт 2022

Мда, беру тогда свою картинку назад :) Меня смутило упоминание параболической траектории в теме по ссылке sledo, поэтому решил, что он предлагает решение другой задачи, не той, что у ТС... Не разобрался до конца, о чем речь.

Страницы: 1 2
ПрограммированиеФорумИгровая логика и ИИ

Тема в архиве.