Данный P1 и P2, как я могу получить угол от P1 до P2? Спасибо
Это просто float angle = atan2 (p1.y - p2.y, p1.x - p2.x)
.
Конечно, тип возвращаемого значения - в радианах, если вам это нужно в градусах, просто введите angle * 180 / PI
Так, вспоминая школьную тригонометрию, вот что я получил.
Две точки A(x1,y1) и B(x2,y2)
Я предполагаю, что вам нужен угол между этими двумя точками и началом координат O(0,0).
Каждая точка образует треугольник, ограниченный высотой, основанием и гипотенузой, поэтому получаются два угла alpha1 и alpha2. Идея в том, чтобы найти каждый из них и вычислить требуемый угол beta, сделав beta = alpha1 - alpha2, где alpha1 таков, что alpha1 > alpha2.
Вычислите alpha1 = inv_tan(y1/x1) и alpha2 = inv_tan(y2/x2)
then do beta = alpha1 - alpha2