[英]Normalising angle between negative y-axis and vector
定義:
計算 v 的斜率 m:
m = v.y / v.x;
由於倒向量 v (-v) 的斜率值相同(符號不同),因此我們可以使用 m 的絕對值。
正 x 軸與向量 v 之間的角度 θ:
theta = atan(abs(m));
角度 α 為:
alpha = M_PI_2 - theta;
這基本上就是atan2
所做的,但atan2
為您提供了 [-π, π] 范圍內的值。 通過上面的代碼,我們得到了 [0, π / 2] 范圍內的值。
y 軸是從上到下還是從上到下顯示在屏幕上並不重要。 數學是一樣的。 但這意味着,您在同一系統中收到 P1 和 P2。 如果不是,則必須鏡像 x 軸上的點,這會改變點的 y 坐標的符號。
詳細版本:
alpha = M_PI_2 - (atan(abs((P2.y - P1.y) / (P2.x - P1.x)))); //radians
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.