Как я могу рассчитать угол между двумя линиями с одной и той же начальной точкой? - PullRequest
0 голосов
/ 31 марта 2019

Я работаю прямо над небольшой HTML-игрой на холсте, и мне нужен угол между прямой и вертикалью. Как я могу рассчитать это? Моя прямая линия такова:

(пример строки)

var line = {x_start: 192, x_end: 288, y_start: 256, y_end};

Это то, что я хочу знать визуально:

Visual illustration

Выход этого get_degree () должен быть углом в формате градусов

1 Ответ

1 голос
/ 31 марта 2019

Если вход последовательно пытается вычислить угол относительно вертикали, то это не должно быть слишком сложно. Сначала вычтите начальные значения для конечных значений, найдите касательный угол, затем добавьте 90. Если x в конечной точке меньше, чем x в начальной точке, то добавьте 180.

deltaY = 320 - 256 = 64

deltaX = 288 - 192 = 96

Угол касания (deltaY / deltaX) = 30,96 градуса.

Так как конечная точка x больше начальной точки, вы добавляете 90. Еще добавляете 180. Вы можете использовать atan () для вычисления степени тангенса, но она возвращает радианы, поэтому вы можете преобразовать ее в градусы, умножив ее на 180 / пи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...