Я пытался реализовать движение снаряда в Javascript, и я застрял в определении угла (из которого можно получить скорость x и y)
var v = 1;
var d = 10;
var g = -1;
var angle = 0.5 * Math.asin((g*d)/(v*v));
Я бы ожидал, что что-то подобное сработает, так как оно идет отсюда Здесь .
Кажется, я получаю значения NaN или очень маленькое число.
Чтобы дать немного больше контекста; Снаряд должен пройти из точки A в точку B (в моем коде расстояние d
), где A и B находятся на одной высоте. Позже я хотел бы немного рандомизировать расстояние и угол, но я предполагаю, что это не будет проблемой, как только эта проблема угла будет решена.
EDIT:
Что касается лучшего примера:
var v = 100;
var d = 100;
var g = 1; // I've made this positive now
var angle = 0.5 * Math.asin((g*d)/(v*v));
Это говорит о том, что угол теперь составляет 0,005