Я нифига не догоняю как это обьяснить, у меня есть движение снаряда по заданной траектории (не обязательно прямо, это может быть и дуга)
Мне нужно вокруг этого снаряда запустить другую точку (снаряд) которая будет двигаться вокруг него с определенным радиусом. Исходные данные в пространстве первой точки от которой мы будем отталкиваться у меня есть и меняются в периодик функции (есть углы наклона относительно места падения если эта дуга, парабола и тп). Под каким углом второй снаряд будет двигаться тоже объясните как вычислять. Если ещё нужны исходные данные которые мне известны от первого снаряда я могу сказать какие есть. В общем если можно поподробнее, эта фигня для меня слабо понятная.

Принятый ответ

function PolarProjectionXY(x, y, dist, angle)
    local PPx = x + dist * Cos(angle * bj_DEGTORAD)
    local PPy = y + dist * Sin(angle * bj_DEGTORAD)
    return PPx, PPy
end

function PolarProjectionXYZ(x, y, z, dist, GroundAngle, FacingAngle)
    --FacingAngle - 0-360 -- yaw
    --GroundAngle - 0-180 -- pitch
    local x1 = x + dist*SinBJ(GroundAngle)*CosBJ(FacingAngle)
    local y1 = y + dist*SinBJ(GroundAngle)*SinBJ(FacingAngle)
    local z1 = z + dist*CosBJ(GroundAngle)
    --
    return x1,y1,z1
end
`
ОЖИДАНИЕ РЕКЛАМЫ...
3
17
2 года назад
3
function PolarProjectionXY(x, y, dist, angle)
    local PPx = x + dist * Cos(angle * bj_DEGTORAD)
    local PPy = y + dist * Sin(angle * bj_DEGTORAD)
    return PPx, PPy
end

function PolarProjectionXYZ(x, y, z, dist, GroundAngle, FacingAngle)
    --FacingAngle - 0-360 -- yaw
    --GroundAngle - 0-180 -- pitch
    local x1 = x + dist*SinBJ(GroundAngle)*CosBJ(FacingAngle)
    local y1 = y + dist*SinBJ(GroundAngle)*SinBJ(FacingAngle)
    local z1 = z + dist*CosBJ(GroundAngle)
    --
    return x1,y1,z1
end
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.