真方位角的计算公式

227次

问题描述:

真方位角是什么意思

推荐答案

2023-10-24 01:47:28

先计算出坐标增量:

dX=Xb-Xa

dY=Yb-Ya

dY=dY+1E-10 为了使除数不为零而加一个很小的数

方位角计算万能公式:Az=pi * (1-Sgn(dY)/2)-Atn(dX / dY) 单位为弧度 Az=Az * 180 /pi 单位为度

此公式计算无需判断象限,只需在值小于0时加上360即可!

其中,sgn()为求符号函数,若dX<0时其值为-1,dX>0时为1,dX=0时为0。使用此公式不用判断所在象限,直接将坐标增量代入即可求出方位角值,在用计算器编程时若没有SGN()函数可自行判断并用一个变量代替!

VBA代码:

'方位角计算函数 Azimuth()

'Sx为起点X,Sy为起点Y

'Ex为终点X,Ey为终点Y

'Style指明返回值格式

'Style=-1为弧度格式

'Style=0为“DD MM SS”格式

'Style=1为“DD-MM-SS”格式

'Style=2为“DD°MMˊSS""”格式

'Style=其它值时返回十进制度值

Function Azimuth(Sx As Double, Sy As Double, Ex As Double, Ey As Double, Style As Integer)

Dim DltX As Double, DltY As Double, A_tmp As Double, Pi As Double

Pi = Atn(1) * 4 '定义PI值

DltX = Ex - Sx

DltY = Ey - Sy + 1E-20

A_tmp = Pi * (1 - Sgn(DltY) / 2) - Atn(DltX / DltY) '计算方位角

A_tmp = A_tmp * 180 / Pi '转换为360进制角度

Azimuth = Deg2DMS(A_tmp, Style)

End Function

'转换角度为度分秒

'Style=-1为弧度格式

'Style=0为“DD MM SS”格式

'Style=1为“DD-MM-SS”格式

'Style=2为“DD°MMˊSS""”格式

'Style=其它值时返回十进制度值

Function Deg2DMS(DegValue As Double, Style As Integer)

Dim tD As Integer, tM As Integer, Ts As Double, tmp As Double

tD = Int(DegValue)

tmp = (DegValue - tD) * 60

tM = Int(tmp)

tmp = (tmp - tM) * 60

Ts = Round(tmp, 1)

select Case Style

其他答案

2023-10-24 01:47:28

真方位角A=磁方位角A -m +磁偏角δ=坐标方位角α+子午线收敛角γ 。

磁方位角 Am,坐标方位角 α 。测绘工作中,表示方向使用到的有三个方位角:真方位角,磁方位角,坐标方位角。真方位角是从通过目标方向线起点的子午线北方向(真北方向)顺时针旋转至目标方向线的夹角。取值范围是0°到360°(不含)。通俗讲就是和子午线的夹角。用A表示。磁方位角是和磁北方向的夹角。用Am表示。坐标方位角是和坐标纵线北方向的夹角。用α表示。

知道问答相关问答

(c)2008-2025 自学教育网 All Rights Reserved 汕头市灵创科技有限公司
粤ICP备2024240640号-6