Допустим точка E имеет координаты [0,0], A [0,10], B [9,1].
Как можно вычислить, на какой угол необходимо повернуть объект вокруг точки E, чтобы он оказался из A в точке B?
Другие языки программирования и технологии
Как узнать угол поворота между двумя точками?
Как правильно сказал Алик, угол посчитать можно - он равен разнице арктангенсов:
alpha=|atan(y1/x1)-atan(y2/x2)|
А вот попасть из одной точки в другую таким образом может и не получиться.
alpha=|atan(y1/x1)-atan(y2/x2)|
А вот попасть из одной точки в другую таким образом может и не получиться.
Приложите транспортир..
Нельзя повернуть систему координат вокруг точки [0,0], чтобы попасть из [0,10] в точку [9,1]! Разные расстояния до этих точек от [0,0]. А при повороте расстояния от точки поворота СОХРАНЯЮТСЯ.
Первый вопрос - никак нельзя. Расстояния от Е до А и В разные.
По дополнению - это нахождение угла в треугольнике по координатам вершин. Используется теорема косинусов. Готовая формула, например, тут:
http://www.kakprosto.ru/kak-36186-kak-nayti-ugol-treugolnika-po-ego-koordinatam
Можно также использовать online-калькулятор:
http://math.semestr*ru/line/analytic-geometry.php
(заменить * на .)
По дополнению - это нахождение угла в треугольнике по координатам вершин. Используется теорема косинусов. Готовая формула, например, тут:
http://www.kakprosto.ru/kak-36186-kak-nayti-ugol-treugolnika-po-ego-koordinatam
Можно также использовать online-калькулятор:
http://math.semestr*ru/line/analytic-geometry.php
(заменить * на .)
а объект тот ввиде точки ?
Такие глупые вопросы возникают потому что ты математику в школе не учил. А потом и появляются нытики, мол, математика не нужна и т д.
Во-первых одним поворотом относительно О твои точки совместить нельзя, нужно ещё как минимум задействовать перенос (или гомотетию и т д) . Во-вторых тебе скорее всего нужно совместить не точки, а векторы, но ты не в состоянии это сформулировать. если знать элементарные матричные преобразования вектор повернуть нетрудно, это делается с помощью матрицы поворота
Во-первых одним поворотом относительно О твои точки совместить нельзя, нужно ещё как минимум задействовать перенос (или гомотетию и т д) . Во-вторых тебе скорее всего нужно совместить не точки, а векторы, но ты не в состоянии это сформулировать. если знать элементарные матричные преобразования вектор повернуть нетрудно, это делается с помощью матрицы поворота
посчитать угол AEB. по теореме синусов, например
Через скалярные произведения все это делается. Оно очень легко выражается через координаты, угол математики тоже определяют через скалярное произведение (а не наоборот)
Я буду скалярное произведение векторов a и b записывать как <a, b> (способов записи много, мне такой привычнее)
<a, b> = sqrt(<a, a>)* sqrt(<b, b>) * cos угла
Возведите в квадрат для удобства, тогда для вычисления cos^2 у Вас вообще останутся только операции сложения и умножения координат. А что делать дальше, пользоваться ли формулой для косинуса двойного угла или извлекать корни, решайте сами.
Если бы в задаче не было требования найти сам угол, то я бы сказал, что с косинусом работать проще, чем с самим углом.
Я буду скалярное произведение векторов a и b записывать как <a, b> (способов записи много, мне такой привычнее)
<a, b> = sqrt(<a, a>)* sqrt(<b, b>) * cos угла
Возведите в квадрат для удобства, тогда для вычисления cos^2 у Вас вообще останутся только операции сложения и умножения координат. А что делать дальше, пользоваться ли формулой для косинуса двойного угла или извлекать корни, решайте сами.
Если бы в задаче не было требования найти сам угол, то я бы сказал, что с косинусом работать проще, чем с самим углом.
По теореме Пифагора, имхо
83.66. Переведи из радиантов в градусы. В Автокаде начерти и там же измерий)))))))))))))))
Похожие вопросы
- Как узнать находится ли точка внутри фигуры?
- Как определить точку внутри треугольника? Turbo Delphi
- программа уже готова,но не находит один угол(паскаль)
- Как сделать поворот 2д персонажа в godot 4.0.1? Если мышка на левой половине экрана то персонаж поворачиваются влево
- Когда минутная и часовая стрелки образуют прямой угол?
- Delphi7 - как создать линии с единой точкой старта?
- Треугольники, круги, точки и линии
- Программа, определяющая принадлежность точек к прямой(язык программирования С)
- Как найти ближайшую точку на окружности к той, что вне окружности???
- Знатокам AutoCAD!!! Не могу ввести вторую координату точки отрезка.