Как найти угол по координатам двух точек


Загрузить PDF


Загрузить PDF

Нахождение угла наклона прямой – это один из важнейших навыков в геометрии, необходимый для построения графика линейной функции или для определения координат точек пересечения прямой с осями X и Y. Угол наклона прямой определяет скорость ее роста или убывания,[1]
то есть как быстро прямая перемещается по вертикали в зависимости от движения по горизонтали. Угол наклона прямой легко вычисляется по координатам двух точек, лежащих на этой прямой.

  1. Изображение с названием Find the Slope of a Line Using Two Points Step 1

    1

    Уясните формулу для вычисления углового коэффициента. Угловой коэффициент равен тангенсу угла наклона прямой, который она образует с осью Х, и вычисляется как отношение вертикального расстояния между двумя точками к горизонтальному расстоянию между двумя точками.

  2. Изображение с названием Find the Slope of a Line Using Two Points Step 2

    2

    Выберите две точки и найдите их координаты. Можно выбрать любые две точки, лежащие на прямой.

  3. Изображение с названием Find the Slope of a Line Using Two Points Step 3

    3

    Задайте порядок точек (относительно друг друга). Одна точка будет первой точкой, а другая – второй. Не имеет значения, какая точка будет первой, а какая второй – главное не перепутать их порядок в процессе вычисления.[2]

  4. Изображение с названием Find the Slope of a Line Using Two Points Step 4

    4

    Запишите формулу для вычисления углового коэффициента. Формула: {frac  {VR}{GR}}={frac  {y_{{2}}-y_{{1}}}{x_{{2}}-x_{{1}}}}, где VR – вертикальное расстояние, определяемое изменением координаты «у», GR – горизонтальное расстояние, определяемое изменением координаты «х».[3]

    Реклама

  1. Изображение с названием Find the Slope of a Line Using Two Points Step 5

    1

    В формулу для вычисления углового коэффициента подставьте координаты «у». Не перепутайте их с координатами «х» и убедитесь, что подставляете правильные координаты первой и второй точек.

  2. Изображение с названием Find the Slope of a Line Using Two Points Step 6

    2

    В формулу для вычисления углового коэффициента подставьте координаты «х». Не перепутайте их с координатами «у» и убедитесь, что подставляете правильные координаты первой и второй точек.

  3. Изображение с названием Find the Slope of a Line Using Two Points Step 7

    3

    Вычтите координаты «у». Вы найдете вертикальное расстояние.

  4. Изображение с названием Find the Slope of a Line Using Two Points Step 8

    4

    Вычтите координаты «х». Вы найдете горизонтальное расстояние.

  5. Изображение с названием Find the Slope of a Line Using Two Points Step 9

    5

    Если возможно, сократите дробь. Вы найдете угловой коэффициент.

  6. Изображение с названием Find the Slope of a Line Using Two Points Step 10

    6

    Обращайте внимание на отрицательные числа. Угловой коэффициент может быть положительным или отрицательным. В случае положительного значения прямая возрастает (движется вверх слева направо); в случае отрицательного значения прямая убывает (движется вниз слева направо).

    • Помните, что если и в числителе, и в знаменателе стоят отрицательные числа, то результат будет положительным.
    • Если в числителе или в знаменателе стоит отрицательное число, то результат будет отрицательным.
  7. Изображение с названием Find the Slope of a Line Using Two Points Step 11

    7

    Проверьте ответ. Для этого измерьте или посчитайте (по шкалам осей) вертикальное и горизонтальное расстояния. Если они совпали с вычисленными, то ответ правильный.

    • Если измеренные или посчитанные вертикальное и горизонтальное расстояния не совпали с вычисленными, то ответ не правильный.

    Реклама

Советы

Похожие статьи

Об этой статье

Эту страницу просматривали 90 407 раз.

Была ли эта статья полезной?

Угол между векторами

Определение

Угол между векторами — это угол между отрезками, которые изображают эти две направляющие и которые отложены от одной точки пространства. Другими словами — это кратчайший путь, на который можно повернуть один из векторов вокруг его начала до положения общей направленности со вторым.

Угол между векторами

 

На изображении это α, который также можно обозначить следующим образом:

(left(widehat{overrightarrow a;overrightarrow b}right))

Осторожно! Если преподаватель обнаружит плагиат в работе, не избежать крупных проблем (вплоть до отчисления). Если нет возможности написать самому, закажите тут.

Как и любой другой угол, векторный может быть представлен в нескольких вариациях.

Острый:

Острый угол между векторами

 

Тупой:

Тупой угол между векторами

 

Прямой:

Прямой угол

 

С величиной (0^circ) (то есть, векторы сонаправлены):

0 градусов

 

С величиной (180^circ) (векторы направлены в противоположные стороны):

180 градусов

 

Нахождение угла между векторами

Как правило, угол между ( overrightarrow a) и (overrightarrow b) можно найти с помощью скалярного произведения или теоремы косинусов для треугольника, который был построен на основе двух этих направляющих.

Определение

Скалярное произведение — это число, которое равно произведению двух направляющих на косинус угла между ними.

Формула скалярного произведения:

(left(overrightarrow a;overrightarrow bright)=left|overrightarrow aright|timesleft|overrightarrow bright|timescosleft(widehat{overrightarrow a;overrightarrow b}right))

  1. Если α — острый, то СП (скалярное произведение) будет положительным числом (cos острого угла — положительное число).
  2. Если векторы имеют общую направленность, то есть угол между ними равен (0^circ), а косинус — 1, то СП будет тоже положительным.
  3. Если α — тупой, то скалярное произведение будет отрицательным (cos тупого угла — отрицательное число).
  4. Если α равен (180^circ), то есть векторы противоположно направлены, то СП тоже отрицательно, потому что cos данного угла равен 1.
  5. Если α — прямой, то СП равно 0, так как косинус (90^circ) равен 0.

В случае, если overrightarrow a и overrightarrow b не нулевые, можно найти косинус α между ними, опираясь на формулу:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|})

Расчет угла, если вектор задан координатами

В случае, когда направляющие расположены на двухмерной плоскости с заданными координатами в виде (overrightarrow a=left(a_x;a_yright)) и (overrightarrow b=left(b_x;b_yright)), то угол между ними можно найти следующим образом:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}})

Если же координаты находятся в трехмерном пространстве и заданы в виде:

(overrightarrow a=left(a_x;a_y;a_zright))

( overrightarrow b=left(b_x;b_y;b_zright))

то формула принимает такой вид:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y+a_zcdot b_z}{sqrt{a_x^2+a_y^2+a_z^2}cdotsqrt{b_x^2+b_y^2+b_z^2}})

Расчет угла, если заданы три точки в прямоугольной системе координат

В этом случае проще будет разобраться с объяснениями сразу на примере.

Допустим, нам известны три точки и их координаты: A(3,-2), B(2,1), C (6,-1). Нужно найти косинус угла между (overrightarrow{AC}) и (overrightarrow{BC}).

Решение

Для начала найдем их координаты по известным координатам заданных точек:

(overrightarrow{AC}=(6-3, -1-(-2))=(3,1))

(overrightarrow{BC}=(6-2, -1-1)=(4,-2))

После этого уже можем применить формулу для определения косинуса угла на плоскости и подставить известные значения:

(cosleft(widehat{overrightarrow{AC};overrightarrow{BC}}right)=frac{(overrightarrow{AC};;overrightarrow{BC})}{left|overrightarrow{AC}right|cdotleft|overrightarrow{BC}right|}=frac{3cdot4+1cdot(-2)}{sqrt{3^2+1^2}cdotsqrt{4^2+{(-2)}^2}}=frac{10}{sqrt{10}cdot2sqrt5}=frac{10}{10sqrt2}=frac1{sqrt2})

Ответ: (cosleft(widehat{overrightarrow{AC};overrightarrow{BC}}right)=frac1{sqrt2}.)

Примеры решения задач

Для наглядности, взглянем на примеры решения задач по данной теме.

Задача 1

Известно, что (overrightarrow a) и (overrightarrow b). Их длины равны 3 и 6 соответственно, а скалярное произведение равно -9. Нужно найти cos угла между векторами и его величину.

Решение

Применим формулу:

( cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|})

Подставим известные значения:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{-9}{3cdot6}=-frac12)

Далее найдем угол между данными векторами:

(arccosleft(-frac12right)=frac{3pi}4)

Ответ: (left(widehat{overrightarrow a;overrightarrow b}right)=-frac12,;left(widehat{overrightarrow a;overrightarrow b}right)=frac{3pi}4.)

Задача 2

В пространстве даны координаты (overrightarrow a=(8; -11; 7)) и (overrightarrow b=(-2; -7; 8)). Вычислить угол α между ними.

Решение

Используем формулу для нахождения косинуса угла между направляющими в трехмерной системе координат:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y+a_zcdot b_z}{sqrt{a_x^2+a_y^2+a_z^2}cdotsqrt{b_x^2+b_y^2+b_z^2}})

Подставляем значения и получаем:

(cosleft(alpharight)=frac{8cdot(-2)+(-11)cdot(-7)+7cdot8}{sqrt{8^2+{(-11)}^2+7^2}cdotsqrt{{(-2)}^2+{(-7)}^2+8^2}}=frac{117}{sqrt{234}cdotsqrt{117}}=frac{sqrt{117}}{sqrt{234}}=frac1{sqrt2}=frac2{sqrt2})

Теперь находим угол α:

(alpha=arccosleft(frac2{sqrt2}right)=45^circ)

Ответ: (45^circ).

Задача 3

Известны (overrightarrow a=(3; 4)) и (overrightarrow b=(2; 5)). Найти угол между ними.

Решение

Для расчета используем формулу:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}})

Подставим известные значения и получим:

(cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{left(overrightarrow a;overrightarrow bright)}{left|overrightarrow aright|timesleft|overrightarrow bright|}=frac{a_xcdot b_x+a_ycdot b_y}{sqrt{a_x^2+a_y^2}cdotsqrt{b_x^2+b_y^2}}=frac{3cdot2+4cdot5}{sqrt{3^2+4^2}cdotsqrt{2^2+5^2}}=frac{26}{sqrt{25}cdotsqrt{29}}=frac{26}{5sqrt{29}})

Ответ: (cosleft(widehat{overrightarrow a;overrightarrow b}right)=frac{26}{5sqrt{29}})

Решение. Найдем сначала косинус угла между заданными векторами, для этого воспользуемся формулой

Нахождение угла между векторами

Длина вектора, угол между векторами – эти понятия являются естественно-применимыми и интуитивно понятными при определении вектора как отрезка определенного направления. Ниже научимся определять угол между векторами в трехмерном пространстве, его косинус и рассмотрим теорию на примерах.

Для рассмотрения понятия угла между векторами обратимся к графической иллюстрации: зададим на плоскости или в трехмерном пространстве два вектора a → и b → , являющиеся ненулевыми. Зададим также произвольную точку O и отложим от нее векторы O A → = b → и O B → = b →

Углом между векторами a → и b → называется угол между лучами О А и О В .

Полученный угол будем обозначать следующим образом: a → , b → ^

Очевидно, что угол имеет возможность принимать значения от 0 до π или от 0 до 180 градусов.

a → , b → ^ = 0 , когда векторы являются сонаправленными и a → , b → ^ = π , когда векторы противоположнонаправлены.

Векторы называются перпендикулярными, если угол между ними равен 90 градусов или π 2 радиан.

Если хотя бы один из векторов является нулевым, то угол a → , b → ^ не определен.

Нахождение угла между векторами

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

Согласно определению скалярное произведение есть a → , b → = a → · b → · cos a → , b → ^ .

Если заданные векторы a → и b → ненулевые, то можем разделить правую и левую части равенства на произведение длин этих векторов, получая, таким образом, формулу для нахождения косинуса угла между ненулевыми векторами:

cos a → , b → ^ = a → , b → a → · b →

Данная формула используется, когда в числе исходных данных есть длины векторов и их скалярное произведение.

Исходные данные: векторы a → и b → . Длины их равны 3 и 6 соответственно, а их скалярное произведение равно – 9 . Необходимо вычислить косинус угла между векторами и найти сам угол.

Решение

Исходных данных достаточно, чтобы применить полученную выше формулу, тогда cos a → , b → ^ = – 9 3 · 6 = – 1 2 ,

Теперь определим угол между векторами: a → , b → ^ = a r c cos ( – 1 2 ) = 3 π 4

Ответ: cos a → , b → ^ = – 1 2 , a → , b → ^ = 3 π 4

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

Длина вектора определяется как корень квадратный из суммы квадратов его координат, а скалярное произведение векторов равно сумме произведений соответствующих координат. Тогда формула для нахождения косинуса угла между векторами на плоскости a → = ( a x , a y ) , b → = ( b x , b y ) выглядит так:

cos a → , b → ^ = a x · b x + a y · b y a x 2 + a y 2 · b x 2 + b y 2

А формула для нахождения косинуса угла между векторами в трехмерном пространстве a → = ( a x , a y , a z ) , b → = ( b x , b y , b z ) будет иметь вид: cos a → , b → ^ = a x · b x + a y · b y + a z · b z a x 2 + a y 2 + a z 2 · b x 2 + b y 2 + b z 2

Исходные данные: векторы a → = ( 2 , 0 , – 1 ) , b → = ( 1 , 2 , 3 ) в прямоугольной системе координат. Необходимо определить угол между ними.

Решение

  1. Для решения задачи можем сразу применить формулу:

cos a → , b → ^ = 2 · 1 + 0 · 2 + ( – 1 ) · 3 2 2 + 0 2 + ( – 1 ) 2 · 1 2 + 2 2 + 3 2 = – 1 70 ⇒ a → , b → ^ = a r c cos ( – 1 70 ) = – a r c cos 1 70

  1. Также можно определить угол по формуле:

cos a → , b → ^ = ( a → , b → ) a → · b → ,

но предварительно рассчитать длины векторов и скалярное произведение по координатам: a → = 2 2 + 0 2 + ( – 1 ) 2 = 5 b → = 1 2 + 2 2 + 3 2 = 14 a → , b → ^ = 2 · 1 + 0 · 2 + ( – 1 ) · 3 = – 1 cos a → , b → ^ = a → , b → ^ a → · b → = – 1 5 · 14 = – 1 70 ⇒ a → , b → ^ = – a r c cos 1 70

Ответ: a → , b → ^ = – a r c cos 1 70

Также распространены задачи, когда заданы координаты трех точек в прямоугольной системе координат и необходимо определить какой-нибудь угол. И тогда, для того, чтобы определить угол между векторами с заданными координатами точек, необходимо вычислить координаты векторов в виде разности соответствующих точек начала и конца вектора.

Исходные данные: на плоскости в прямоугольной системе координат заданы точки A ( 2 , – 1 ) , B ( 3 , 2 ) , C ( 7 , – 2 ) . Необходимо определить косинус угла между векторами A C → и B C → .

Решение

Найдем координаты векторов по координатам заданных точек A C → = ( 7 – 2 , – 2 – ( – 1 ) ) = ( 5 , – 1 ) B C → = ( 7 – 3 , – 2 – 2 ) = ( 4 , – 4 )

Теперь используем формулу для определения косинуса угла между векторами на плоскости в координатах: cos A C → , B C → ^ = ( A C → , B C → ) A C → · B C → = 5 · 4 + ( – 1 ) · ( – 4 ) 5 2 + ( – 1 ) 2 · 4 2 + ( – 4 ) 2 = 24 26 · 32 = 3 13

Ответ: cos A C → , B C → ^ = 3 13

Угол между векторами можно определить по теореме косинусов. Отложим от точки O векторы O A → = a → и O B → = b → , тогда, согласно теореме косинусов в треугольнике О А В , будет верным равенство:

A B 2 = O A 2 + O B 2 – 2 · O A · O B · cos ( ∠ A O B ) ,

b → – a → 2 = a → + b → – 2 · a → · b → · cos ( a → , b → ) ^

и отсюда выведем формулу косинуса угла:

cos ( a → , b → ) ^ = 1 2 · a → 2 + b → 2 – b → – a → 2 a → · b →

Для применения полученной формулы нам нужны длины векторов, которые несложно определяются по их координатам.

Хотя указанный способ имеет место быть, все же чаще применяют формулу:

[spoiler title=”источники:”]

http://www.webmath.ru/poleznoe/formules_13_8.php

http://zaochnik.com/spravochnik/matematika/vektory/nahozhdenie-ugla-mezhdu-vektorami-primery-i-reshen/

[/spoiler]

light2041

Добрый день! У меня не получается решить небольшую математическую задачку, поэтому прошу помощи сообщества.

Итак, у меня есть сервис отслеживания транспорта. Для каждой машины на карте нужно установить угол поворота через transform: rotate(<угол>).

Для каждой машины у меня есть ее прошлая координата X1, Y1 и текущая координата X2, Y2.

Вопрос. Какая формула позволит высчитывать этот угол?


  • Вопрос задан

    более трёх лет назад

  • 13474 просмотра

Пригласить эксперта

alpha = arccos (deltaX / deltaY)
PS а “высшая математика” в тэгах к вопросу – это маркетинг? 🙂

UPD: ойблин, пардон… все учителя математики моей юности, простите меня :/

конечно же alpha = atan ( deltaY / deltaX )
ну а при deltaX=0, alpha = sign(deltaY) * pi/2;

Нарисуйте это на бумажке – и поймете. По сути у вас есть прямоугольный треугольник, где гипотенуза – отрезок от (x1,y1) до (x2,y2), а катеты – проекции на соответствующие оси. Далее нужный угол находите из формул соотношения углов и сторон прямоугольного треугольника.

Итак, у меня есть сервис отслеживания транспорта.

У меня не получается решить небольшую математическую задачку,

Сдайте дидактический материал и идите учить уроки!

X = x0 + (x - x0) * cos(a) - (y - y0) * sin(a);
Y = y0 + (y - y0) * cos(a) + (x - x0) * sin(a);

Здесь про угол между векторами
угол(a, b) = arccos((a * b) / (|a| * |b|))
a * b – скалярное произведение (сумма произведений координат)
|a| – длина вектора (корень из суммы квадратов его координат)

Как я понял, вам нужен угол вектора (x1,y1)→(x2,y2).
Любой школьный «арк», если им действовать в лоб, в определённом диапазоне углов не определён или неустойчив.
Но именно для этого в большинстве языков присутствует функция
atan2(y2 - y1, x2 - x1)

Если задача звучит именно так, то она сводится к нахождению угла между векторами (см. скалярное произведение векторов):

const getScalarProduct = ([xA, ...restA], [xB, ...restB]) => 
   (restA.length === 0 || restB.length === 0)
      ? xA * xB
      : xA * xB + getScalarProduct(restA, restB)
  
const getSquareModule = ([x, ...rest]) =>
   (rest.length === 0)
      ? x * x
      : x * x + getSquareModule(rest)

const getModule = (A) => Math.sqrt(getSquareModule(A))
  
const getCosOfAngle = (A, B) => getScalarProduct(A, B) / (getModule(A) * getModule(B))

getCosOfAngle([1, 0],[0, 1]) – двумерный случай, но можно находить угол для любой размерности

P.S.: код на JavaScript, функция getCosOfAngle возвращает косинус угла

Никогда не поздно, возможные исключения за тобой.

<?php 
	$x1 = 10;
	$y1 = 10;
	$x2 = 5;
	$y2 = 5;

	$alpha = rad2deg(atan2($y1 > $y2 ? $y1 - $y2 : ($y1 == $y2 ? $y1 : $y2 - $y1), $x1 > $x2 ? $x1 - $x2 : ($x1 == $x2 ? $x1 : $x2 - $x1)));

	echo($alpha)
?>

UPD: В этом решении можно получить угол, если координаты по отдаленности будут меняться между собой, решение будет правильным.

UPD2: Пример, если это по-типу радара и углы 0 – 180 и 0 – -180:

$alpha = (($y1 > $y2 ? 180 : -180) - rad2deg(atan2($y1 - $y2, $x1 - $x2))) * -1;


  • Показать ещё
    Загружается…

24 мая 2023, в 16:05

2000 руб./за проект

24 мая 2023, в 16:00

1000 руб./за проект

24 мая 2023, в 15:46

500 руб./в час

Минуточку внимания

Имеем три точки с координатами – A, B и C, точки образуют отрезки AB и AC, необходимо определить угол α между этими отрезками:

1

PHP-функция

$x1, $y1 – координаты точки A,
$x2, $y2 – координаты точки B,
$x3, $y3 – координаты точки C.

function getAnglePoints($x1, $y1, $x2, $y2, $x3, $y3)
{
	return rad2deg(atan2($y3 - $y1, $x3 - $x1) - atan2($y2 - $y1, $x2 - $x1));		
}

PHP

2

JS-функция

function getAnglePoints(x1, y1, x2, y2, x3, y3)
{
	return (Math.atan2(y3 - y1, x3 - x1) - Math.atan2(y2 - y1, x2 - x1)) * 180 / Math.PI;		
}

JS

3

Угол между тремя точками по координатам онлайн

Добавить комментарий