计算方位角_测量计算方位角万能公式及VB、VBA源代码

本文提供了一组VBA函数,用于计算方位角、距离、度分秒转换等,适用于地理坐标和工程坐标之间的转换。此外,还涵盖了CAD资源、BIM软件、测量软件的教程和实用技巧,包括CASS、Revit、全站仪操作、RTK坐标转换等。
摘要由CSDN通过智能技术生成

4bd3b78ae5aabaf5bb8ea7c586920ec7.png

'方位角计算函数 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

Case -1 '返回弧度

Deg2DMS = DegValue * Atn(1) * 4 / 180

Case 0

Deg2DMS = tD & " " & Format(tM, "00") & " " & Format(Ts, "00.0")

Case 1

Deg2DMS = tD & "-" & Format(tM, "00") & "-" & Format(Ts, "00.0")

Case 2

Deg2DMS = tD & "°" & Format(tM, "00") & "ˊ" & Format(Ts, "00.0") & """"

Case Else

Deg2DMS = DegValue

End Select

End Function

Function aa(area1 As Double, area2 As Double) As Double

Dim rat As Double

rat = area1 / area2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值