python计算方位角_实例讲解:用python 计算方位角(根据两点的坐标计算)记得收藏哦...
今天為大家分享一篇python 計算方位角實例(根據兩點的坐標計算),具有很好的參考價值,希望對大家有所幫助。一起來看看吧!
知道兩點坐標,怎么計算兩點方向的方位角?
答:首先計算坐標增量dx,dy(兩個對應坐標分量相減,終點的減始點的)。
若dx,dy中有一個為零時,根據另一個的正負決定方位角(0,90,180,270這四個中的一個,可畫坐標軸圖分析,但不要畫為數學坐標哦)
基本思路:
若dx,dy都不為零;則
計算a=arcatn(|dy/dx|)(這好像叫象限角)
當dx>0dy>0時方位角=a;
當dx<0dy>0時方位角=180-a;
當dx<0dy<0時方位角=180+a; 負范圍為a-pi
當dx>0dy<0時方位角=360-a; 負范圍為-a
還有一種方法,使用 atan2來計算方位角,范圍為-pi,pi
atan2(y,x)所表達的意思是坐標原點為起點,指向(x,y)的射線在坐標平面上與x軸正方向之間的角的角度。
結果為正表示從 X 軸逆時針旋轉的角度,結果為負表示從 X 軸順時針旋轉的角度。
atan 和 atan2 都是求反正切函數,如:有兩個點 point(x1,y1), 和 point(x2,y2);
那么這兩個點形成的斜率的角度計算方法分別是:
float angle = atan( (y2-y1)/(x2-x1) );
float angle = atan2( y2-y1, x2-x1 );
atan 和 atan2 區別:
1:參數的填寫方式不同;
2:atan2 的優點在于 如果 x2-x1等于0 依然可以計算,但是atan函數就會導致程序出錯;
3:atan2(a,b)的取值范圍介于 -pi 到 pi 之間(不包括 -pi),而atan(a/b)的取值范圍介于-pi/2到pi/2之間(不包括±pi/2)。
另外要注意的是,函數atan2(y,x)中參數的順序是倒置的,atan2(y,x)計算的值相當于點(x,y)的角度值。
如果要實現方位角的計算,代碼如下:
math中關于三角函數常用的操作:
以上這篇python 計算方位角實例(根據兩點的坐標計算)就是小編分享給大家的全部內容了,希望能給大家一個參考。
結尾
總結
以上是生活随笔為你收集整理的python计算方位角_实例讲解:用python 计算方位角(根据两点的坐标计算)记得收藏哦...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python asyncio futur
- 下一篇: 数学建模python教材推荐_数模竞赛专