Полярные координаты, Определить знак угла вектора. |
Здравствуйте, гость ( Вход | Регистрация )
Полярные координаты, Определить знак угла вектора. |
zvygin1964 |
17.12.2014, 9:20
Сообщение
#1
|
Новичок Группа: Продвинутые Сообщений: 3 Регистрация: 17.12.2014 Город: д. Потресово Калужской области Малоярославецкого р-на Учебное заведение: не учусь Вы: другое |
Точка переместилась. Нужно узнать по часовой стрелке или против (в любой из четырех частей 2пи).
Для первой четверти- это знак угла ф=arctan(dу/dх), для других трех четвертей, это другие формулы. А обобщенная формула есть? То есть нужен знак второй полярной координаты. Вероятно, это знак определителя или : dot = a.x * b.x + a.y * b.y ; // скалярное произведение det = a.x * b.y - a.y * b.x ; // определитель an:=arctan(det/dot) ; //угол поворота Решение этого вопроса будет использовано мной в http://programmersforum.ru/showthread.php?...7214&page=2 . Эскизы прикрепленных изображений |
zvygin1964 |
28.12.2014, 18:58
Сообщение
#2
|
Новичок Группа: Продвинутые Сообщений: 3 Регистрация: 17.12.2014 Город: д. Потресово Калужской области Малоярославецкого р-на Учебное заведение: не учусь Вы: другое |
Soul,- хороший человек предложил такой вариант: PloshadTreug:=((x2-x1)*(y3-y1)-(y2-y1)*(x3-x1))/2; //знак показывает слева или справа третья точка находится относительно прямой, образованной первыми двумя точками. Ему выслано... литров (в денежном эквиваленте).
То есть расчет площади треугольника у которого один угол совпадает с началом координат. |
zvygin1964 |
12.1.2015, 7:59
Сообщение
#3
|
Новичок Группа: Продвинутые Сообщений: 3 Регистрация: 17.12.2014 Город: д. Потресово Калужской области Малоярославецкого р-на Учебное заведение: не учусь Вы: другое |
Работает вариант:
alpha:= arctan(((x1*y2) - (y1*x2))/( (x1*x2) + (y1*y2))) ; Вероятно, это получено путем решения матрицы 2 х 2. |
Текстовая версия | Сейчас: 20.4.2024, 3:08 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru