Форум программистов, компьютерный форум, киберфорум
Геометрия
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
Alvin Seville
 Аватар для Соколиный глаз
343 / 273 / 134
Регистрация: 25.07.2014
Сообщений: 4,537
Записей в блоге: 9

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

22.07.2017, 09:27. Показов 3058. Ответов 12
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Как узнать угол наклона одной прямой относительно другой, если обе прямые заданы координатами двух точек?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.07.2017, 09:27
Ответы с готовыми решениями:

Изменение координат прямой при изменение угла наклона
Есть прямая координаты точек то есть линия лежит на оси х как изменятся координаты если один конец сдвинится на 10 градусов?

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

Определение угла наклона прямой
Доброго времени суток. Задача возникла. Для наглядности вывожу на панель линию по двум точкам и нужно определить угол наклона линии. ...

12
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
22.07.2017, 12:13
Лучший ответ Сообщение было отмечено Volobuev Ilya как решение

Решение

Синус угла между прямыми можно выразить через векторное произведение векторов, направленных вдоль этих прямых.
Если точки А1 и А2 расположены на одной прямой, а точки В1 и В2 - на другой, то
https://www.cyberforum.ru/cgi-bin/latex.cgi?\sin \alpha = \frac{\vec{A_1 A_2} \times \vec{B_1 B_2}}{|A_1 A_2| \cdot |B_1 B_2|}
1
1820 / 1013 / 188
Регистрация: 24.02.2013
Сообщений: 3,014
Записей в блоге: 12
22.07.2017, 13:41
Вектор делим на число и получаем число?
0
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
22.07.2017, 13:45
Nacuott, в числителе потерялся знак модуля.
0
1820 / 1013 / 188
Регистрация: 24.02.2013
Сообщений: 3,014
Записей в блоге: 12
22.07.2017, 13:50
Ах, этот нехороший модуль!
И зачем векторное произведение?(В 2D оно не определено)
Когда можно через скалярное?
0
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
22.07.2017, 15:30
Лучший ответ Сообщение было отмечено Volobuev Ilya как решение

Решение

В общем 3-х-мерном случае, конечно, рациональнее - через скалярное произведение,
но в 2-мерном, если под https://www.cyberforum.ru/cgi-bin/latex.cgi?| \vec a \times \vec b | подразумевать https://www.cyberforum.ru/cgi-bin/latex.cgi? | a_x b_y - a_y b_x | (достаточно определения только модуля),
объём вычислений почти такой же.
0
Почетный модератор
 Аватар для Puporev
64311 / 47608 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
27.07.2017, 09:07
Лучший ответ Сообщение было отмечено Volobuev Ilya как решение

Решение

И это будет не синус, а косинус.
https://www.cyberforum.ru/cgi-bin/latex.cgi?x11=x2-x1\\ y11=y2-y1\\x12=x4-x3\\y12=y4-y3\\cos(a)=\frac{x11*x12+y11*y12}{\sqrt{{x1}^{2}+{y11}^{2}}*\sqrt{{x12}^{2}+{y12}^{2}}}
1
 Аватар для Nadym
396 / 285 / 82
Регистрация: 24.05.2017
Сообщений: 1,112
27.07.2017, 09:16
Ну да, самый что ни на есть косинус)
0
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
27.07.2017, 13:43
Puporev, Nadym, знак векторного произведения не заметили? пояснение ниже не читали?
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
27.07.2017, 20:54
Цитата Сообщение от Nacuott Посмотреть сообщение
И зачем векторное произведение?(В 2D оно не определено)
В 4D тоже.
0
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
27.07.2017, 21:52
helter, задача явно не N-мерная (кстати, ТС'а ответ, содержащий векторное произведение, устроил).
По определению, углом между прямыми называется меньший из углов, образующихся при их пересечении.
Такой угол должен находиться в пределах от 0 до Pi/2. Поэтому, если брать арккосинус, то в общем случае
результат придётся приводить от промежутка [0, Pi] к промежутку [0, Pi/2]. В то же время, арксинус модуля
сразу даёт правильный ответ. В 2-мерном случае векторное произведение вычисляется не сложнее, чем
скалярное, и поэтому по крайней мере в этом случае оно полезнее.
В данной задаче достаточно выражения для его модуля. Если вопрос не связан с конкретной задачей
и касается обобщения такого выражения на N-мерный случай, то оно даётся формулой Бине-Коши
(для двух взаимно транспонированных матриц размера 2 х N). В частных случаях, когда вычисление
возникающих там определителей 2-го порядка не приводит к чрезмерным вычислительным затратам,
такое выражение также может оказаться более предпочтительным.
С точки зрения корректности терминологии, конечно, о векторном произведении лучше говорить
только в 3-х-мерном случае, но думаю, что в данном случае ясно, что имеется в виду.
0
4528 / 3522 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
27.07.2017, 22:42
А я что, я ничего.

Цитата Сообщение от splen Посмотреть сообщение
Поэтому, если брать арккосинус, то в общем случае
результат придётся приводить от промежутка [0, Pi] к промежутку [0, Pi/2].
В принципе, достаточно взять скалярное произведение по модулю.
1
1728 / 1020 / 181
Регистрация: 03.06.2012
Сообщений: 1,220
27.07.2017, 22:59
Цитата Сообщение от helter Посмотреть сообщение
В принципе, достаточно взять скалярное произведение по модулю.
Вот это, наверное, лучше всего.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.07.2017, 22:59
Помогаю со студенческими работами здесь

тангенс угла наклона аппроксимационной прямой
Добрый вечер. Собственно есть точки по оси абсцисс и ординат. Надо найти тангенс угла наклона аппроксимационной прямой. %Y1 = ; Y1 = ; ...

Вычисление 2 точек на границе прямоугольника, зная точку внутри прямоугольника и Тангенс угла наклона
Помогите понять общий алгоритм....( Вычисление 2 точек на границе прямоугольника, зная точку внутри прямоугольника и Тангенс угла...

Определить, принадлежат ли точки одной и той же полуплоскости относительно прямой
Точки (х1,у1) и (х2,у2) задают прямую на плоскости, делящую её на две плоскости определить, принадлежат ли точки (х3,у3) и (х4,у4) одной и...

Выяснить, лежат ли две точки в одной полуплоскости относительно заданной прямой
Можете помочь разобраться с задачей? Даны действительные числа x1, y1, x2, y2, ..., x6, y6. Точки с координатами (x1, y1), (x2, y2),...

Выяснить, лежат ли две точки в одной полуплоскости относительно заданной прямой
Даны действительные числа x, y. Точки с координатами (x,y),(x,y),(x,y) расcматриваются как вершины первого треугольника, точки с...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Рекурсивные типы в Python
py-thonny 07.04.2025
Рекурсивные типы - это типы данных, которые определяются через самих себя или в сочетании с другими типами, которые в свою очередь ссылаются на исходный тип. В мире программирования такие структуры. . .
C++26: Объединение и конкатенация последовательностей и диапазонов в std::ranges
NullReferenced 07.04.2025
Работа с последовательностями данных – одна из фундаментальных задач, с которой сталкивается каждый разработчик. C++ прошел длинный путь в эволюции средств для манипуляции коллекциями – от. . .
Обмен данными в микросервисной архитектуре
ArchitectMsa 06.04.2025
Когда разработчики начинают погружаться в мир микросервисов, они часто сталкиваются с парадоксальным правилом: "два сервиса не должны делить один источник данных". Эта мантра звучит повсюду в. . .
PostgreSQL в Kubernetes: Автоматизация обслуживания с CNPG
Mr. Docker 06.04.2025
Администраторы баз данных сталкиваются с целым рядом проблем при обслуживании PostgreSQL в Kubernetes: как обеспечить правильную репликацию данных, как настроить автоматическое переключение при. . .
Async/await в TypeScript
run.dev 06.04.2025
Асинхронное программирование — это подход к разработке программного обеспечения, при котором операции выполняются независимо друг от друга. В отличие от синхронного выполнения, где каждая последующая. . .
Многопоточность в C#: Синхронизация потоков
UnmanagedCoder 06.04.2025
Многопоточное программирование стало неотъемлемой частью разработки современных приложений на C#. С появлением многоядерных процессоров возможность выполнять несколько задач параллельно значительно. . .
TypeScript: Классы и конструкторы
run.dev 06.04.2025
TypeScript, как статически типизированный язык, построенный на основе JavaScript, привнес в веб-разработку новый уровень надежности и структурированности кода. Одним из важнейших элементов этой. . .
Многопоточное программирование: Rust против C++
golander 06.04.2025
C++ существует уже несколько десятилетий и его поддержка параллелизма постепенно наращивалась со временем. Начиная с C++11, язык получил стандартную библиотеку для работы с потоками, а в последующих. . .
std::vector в C++: от основ к оптимизации производительности
NullReferenced 05.04.2025
Для многих программистов знакомство с std::vector происходит на ранних этапах изучения языка, но между базовым пониманием и подлинным мастерством лежит огромная дистанция. Контейнер std::vector. . .
Реляционная модель и правила Кодда: фундамент современных баз данных
Codd 05.04.2025
Конец 1960-х — начало 1970-х годов был периодом глубоких трансформаций в области хранения и обработки данных. На фоне растущих потребностей бизнеса и правительственных структур существовавшие на тот. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер