Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
1

Определить угол от точки к точке

11.08.2016, 01:12. Показов 2057. Ответов 26
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго дня, позабыл совсем математику, прошу помощи)
Есть точка А на координатной плоскости с координатой Х1,Y1, есть вторая точка В с координатой Х2,Y2.
Необходимо найти угол от точки А к В. Т.к. точка В может оказаться в любой области координат, то угол будет в диапазоне 0-360 градусов, соответственно результат должен быть 0-360.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
11.08.2016, 01:12
Ответы с готовыми решениями:

Найти угол одной точки "A" в соотношении к точке "B" в градусах
Этот метод возвращает значение в радианах, как получить градусы? #define DEG 57.2957795f...

Определить координаты точки, симметричной точке M относительно прямой
Определить координаты точки, симметричной точке M(2, −5) относительно прямой 2x + 8y − 15 = 0

Определить лежат ли точки на одной окружности с центром в точке О
Заданы координаты двух точек. Определить лежат ли они на одной окружности с центром в точке О(х0,...

Определить угол между ускорением и скоростью точки
По окружности радиуса r=6 м движется точка со скоростью v=3t. Определить угол в градусах между...

26
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
11.08.2016, 09:47 2
Febos, Понятия "Угол между точками" я не встречал. Также как и "угол от точки к точке".
Возможно, вы имели в виду угол от радиус-вектора OA к радиус-вектору OB ?
Тогда так. Угол радиус-вектора ОА FiA= arctg Ay/Ax. Если Ax < 0, прибавляем к нему еще pi.
FiB - аналогично. Нужный вам угол = FiB - FiA
1
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 11:18 3
Угол между лучом АВ и положительным направлением оси Х в интервале 0..360 градусов одной формулой не определить.
Это делается так
Определить угол от точки к точке

где y=by-ay x=bx-by

Поправка
где y=by-ay x=bx-bx
1
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 13:01  [ТС] 4
Да, видимо мне нужен угол радиус-ветора. За пример можно взять часовые стрелки, к примеру маленькая стрелка всегда на 12 часов и относительно ее считать угол к большой стрелке. Я нашел примеры для расчета радиус-ветора относительно начала координат, но у меня как раз это точка А и она может быть в любой координате.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 14:09 5
Цитата Сообщение от Febos Посмотреть сообщение
но у меня как раз это точка А и она может быть в любой координате.
Так перенесите ее при расчетах в начало координат, изменив соответственно координаты точки В.

Добавлено через 21 минуту
Цитата Сообщение от Febos Посмотреть сообщение
маленькая стрелка всегда на 12 часов и относительно ее считать угол к большой стрелке.
Это не то как я написал выше. Угол от оси Y и и в по часовой стрелке.
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 14:13  [ТС] 6
Если вас не затруднит, сделайте пожалуйста пример, а то мне сложновато по вышеприведенным вами формулам)
К примеру объект А имеет координаты (7,8) а объект В координаты (15,-22).
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 14:17 7
Так какой угол Вам нужен, между какими направлениями?
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 14:26  [ТС] 8
Если брать мой пример, то получается из объекта А нужно сделать вектор, его координаты будут равны:
Начало вектора А (7,8);
Конец вектора А (7,8+100);
Начало вектора В будет В(7,8); т.е. равны началу вектора А
Конец вектора В (15,-22);
Вот нужно найти угол между этими векторам, с учетом того, что конец вектора В может быть в любой координате, соответственно результат должен получиться в диапазоне 0-360
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 14:32 9
Цитата Сообщение от Febos Посмотреть сообщение
Конец вектора А (7,8+100);
Это как?

Добавлено через 1 минуту
Цитата Сообщение от Febos Посмотреть сообщение
нужно найти угол между этими векторам
С этого бы и начинали, а то пишете всякую хрень.

Добавлено через 2 минуты
Вообще-то между векторами 2 угла, меньший и дополняющий его до 360 градусов. Вам какой угол надо? Вы по человечески можете написать условие? Если не можете, нарисуйте.
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 14:40  [ТС] 10
Цитата Сообщение от Puporev Посмотреть сообщение
Это как?
Ну у меня то есть только точки объекта, а нужен вектор, вектор объекта А всегда направлен вверх, поэтому и присвоил ему конец (7,8+100);
где
7 это Х координата конца вектора А
8+100 это Y координата конца вектора А

p.s. Попробую нарисовать)
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 14:49 11
Цитата Сообщение от Febos Посмотреть сообщение
8+100 это Y координата конца вектора А
А почему не 108?
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 14:55  [ТС] 12
Определить угол от точки к точке
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 14:56  [ТС] 13
Цитата Сообщение от Puporev Посмотреть сообщение
А почему не 108?
Я так понял это только чтоб задать направление вектора, поэтому значение не важно какое, главное больше 0.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 14:58 14
Цитата Сообщение от Febos Посмотреть сообщение
главное больше 0.
А почему не может быть меньше ноля если угол от 0 до 360?
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 15:04  [ТС] 15
Цитата Сообщение от Puporev Посмотреть сообщение
А почему не может быть меньше ноля если угол от 0 до 360?
Исходные данные такие, что вектор А всегда параллелен оси Y и от него и идет расчет угла от 0 до 360
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 15:09 16
Но на вашем рисунке координата Y точки В отрицательная, точка ниже оси Х.
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 15:11  [ТС] 17
Цитата Сообщение от Puporev Посмотреть сообщение
Но на вашем рисунке координата Y точки В отрицательная, точка ниже оси Х.
Да, так я и писал, что точка В может иметь любую координату, так же, как и точка А
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 15:14 18
Цитата Сообщение от Febos Посмотреть сообщение
Да, так я и писал,
Зачем тогда писать
Цитата Сообщение от Febos Посмотреть сообщение
поэтому значение не важно какое, главное больше 0.
0
0 / 0 / 0
Регистрация: 11.04.2015
Сообщений: 58
11.08.2016, 15:16  [ТС] 19
Значение не важно для конца вектора а не точки, т.к. координата Y конца вектора только показывает направление вектора.
0
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
11.08.2016, 15:17 20
Да ну Вас, извините.
0
11.08.2016, 15:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.08.2016, 15:17
Помогаю со студенческими работами здесь

Найти производную функции u в точке М по направлению, идущему от этой точки к точке P
u = \frac{z}{x^2} + xz^2y^3 + yz^4; M(-1,2,1); P(3 ,-6 , 2) Предполагалась такая функция?

Определить взаимное расположение точки с координатами (х0,y0) и окружности радиуса R с центром в точке (х1,у1)
Определить взаимное расположение точки с координатами (х0,y0) и окружности радиуса R с центром в...

Даны 2 точки A(x1,y1) и B(x2,y2). Определить, какой из отрезков, OA или OB, образует больший угол с осью OX
Даны 2 точки A(x1,y1) и B(x2,y2). Определить, какой из отрезков, OA или OB, образует больший угол с...

Заданы 2 точки. Определить какой из отрезков AO или BO образует больший угол с осью OX
Заданы 2 точки. Определить какой из отрезков AO или BO образует больший угол с осью OX. Нарисовать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru