Страницы

Поиск по вопросам

пятница, 28 февраля 2020 г.

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

#алгоритм #геометрия #векторы


Даны 2 вектора а и b, исходящие из точки А, необходимо найти координаты точки В.
Расстояние АВ вычисляю, АВ делит угол, образованный векторами пополам. Предполагаю
перемещать координаты т.А для поиска В: 

В = (Ах + АВ * Соs Alpha; Аy + АВ * Sin Alpha)

Затем строю вектор от А по Ох:

e = {100; 0}  


Нахожу углы между а,е и b,e:

cos Betta = a * e / |a| * |e| ;   cos Gamma = a * e / |a| * |e|


И вот теперь для поиска Alpha, возможны два условия:

Alpha = (Betta - Gamma) / 2


Либо

Alpha = (Betta - Gamma) / 2 + min(Betta, Gamma)


Скажите, верны ли мои суждения? И какое условие должно быть для поиска Alpha?
    


Ответы

Ответ 1



точки, лежащей на биссектрисе угла Вы знаете сколько там точек, на биссектрисе? Миллионы! Все гораздо проще. Приведите вектора а и b к единичной (или любой одинаковой) длине и сложите (векторно, конечно). Добавьте координаты их суммы к координатам точки А - это будет точка B. А AB - это диагональ ромба, построенного на приведенных векторах равной длины. Если в условии есть требование к длине |AB|, приведите получившийся вектор AB к этой длине.

Комментариев нет:

Отправить комментарий