兩點座標與座標軸的夾角(弧度 角度)

2021-09-27 02:15:13 字數 1739 閱讀 9202

原文出處:

開發中,有時需要計算兩個座標點組成的向量與座標軸之間的夾角,然後我們用計算結果,來對元件進行旋轉(rotation)等操作。下面分別演示與x軸、y軸夾角的計算方法。

1,與x軸的夾角

varangle:number= math.atan2((p2.y-p1.y), (p2.x-p1.x))//弧度  0.6435011087932844

vartheta:number= angle*(180/math.pi);//角度  36.86989764584402

個人困惑:

上面的計算方法的夾角是在x軸之下(x軸順時針的角度),而我記憶中數學書上說的角度是在x軸之上(逆時針的角度), 如下圖:

經試驗發現,如果要計與x軸逆針角度,只須將(p2.y-p1.y) 改為(p1.y-p2.y)即可

2,與y軸的夾角

計算方法同與x軸夾角類似,只不過求弧度的時候把引數裡的x和y座標位置調換一下即可。

varangle:number= math.atan2((p2.x - p1.x), (p2.y - p1.y))//弧度  0.9272952180016122

vartheta:number= angle*(180/math.pi);//角度  53.13010235415598

求座標軸上的點與點之間的距離

定義一種型別 point,用於描述座標軸上的點。共同特徵 橫座標x,縱座標y 求當前點到原點 0,0 的距離?計算當前點到p1點的距離?返回兩點間p1,p2的距離?public class point public point int a public point int x,int y 返回當前點...

C 實現座標軸及其上的點。

公司在用devexpress包,為了實現乙個類似座標的圖表,發現用devexpress比較困難,首先,其x y軸的大小是自動的,如何設定成固定值,必須在 設計時 而 執行時 無法更改。搞了很長一段時間都沒實現,無奈之下,自己畫乙個。實現起來還是挺難的,首先對座標值的計算,允許小於1和特別大的值,這時...

知道兩點座標,怎麼計算兩點方向的方位角

知道兩點座標,怎麼計算兩點方向的方位角?答 首先計算座標增量dx,dy 兩個對應座標分量相減,終點的減始點的 若dx,dy中有乙個為零時,根據另乙個的正負決定方位角 0,90,180,270這四個中的乙個,可畫座標軸圖分析,但不要畫為數學座標哦 若dx,dy都不為零 則 計算a arcatn dy ...