Подтвердить что ты не робот

Расчет движения X Y на основе угла поворота?

Скажем, у меня есть объект в 2D пространстве, который может вращаться, а затем должен двигаться в соответствии с его углом поворота.

Например:

  • Если угол равен 0 (направлен вверх), то on_timer он должен переместить 1 на Y и 0 на X.

  • Если угол равен 45, то он должен двигаться 1 на Y и 1 на X.

  • Если на 90 градусов, то 0 на Y и 1 на X.

  • Если указывать 135 градусов, то -1 через Y и +1 на X и т.д.

Знаете ли вы какие-либо функции для вычисления этого?

4b9b3361

Ответ 1

хорошо, он, кажется, движется с разной скоростью для разных углов.

Для 0 degress (прямо вверх) он перемещается на 1, но 45 начинается с того, что он переместил sqrt (1 ^ 2 + 1 ^ 2) = 1,41.

Я думаю, вы хотите посмотреть на Sin and Cos.

X += Speed * Math.Cos(angle);
Y += speed * Math.Sin(angle);

С уважением Герт-Ян