📄 方位角.frm
字号:
VERSION 5.00
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 5415
ClientLeft = 60
ClientTop = 450
ClientWidth = 7455
ForeColor = &H000000FF&
LinkTopic = "Form1"
ScaleHeight = 5415
ScaleWidth = 7455
StartUpPosition = 3 '窗口缺省
Begin VB.TextBox Text5
ForeColor = &H000000FF&
Height = 735
Left = 3120
Locked = -1 'True
TabIndex = 5
Top = 2520
Width = 2295
End
Begin VB.TextBox Text4
Height = 495
Left = 4800
TabIndex = 4
Top = 1440
Width = 1575
End
Begin VB.TextBox Text3
Height = 615
Left = 1200
TabIndex = 3
Top = 1080
Width = 1335
End
Begin VB.TextBox Text2
Height = 615
Left = 4800
TabIndex = 2
Top = 360
Width = 1455
End
Begin VB.TextBox Text1
Height = 495
Left = 1080
TabIndex = 1
Top = 240
Width = 1335
End
Begin VB.CommandButton Command1
Caption = "方位角计算"
Height = 735
Left = 2160
TabIndex = 0
Top = 3960
Width = 2055
End
Begin VB.Label Label5
Caption = "MN方位角输出:"
Height = 555
Left = 1320
TabIndex = 10
Top = 2640
Width = 1575
End
Begin VB.Label Label4
Caption = "ym:"
Height = 375
Left = 4080
TabIndex = 9
Top = 1560
Width = 495
End
Begin VB.Label Label3
Caption = "xm:"
Height = 255
Left = 480
TabIndex = 8
Top = 1320
Width = 615
End
Begin VB.Label Label2
Caption = "yn:"
Height = 255
Left = 4080
TabIndex = 7
Top = 480
Width = 615
End
Begin VB.Label Label1
Caption = "xn:"
Height = 255
Left = 480
TabIndex = 6
Top = 360
Width = 615
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'Dim a As Double
Private Sub Command1_Click()
Dim a1 As Double, a2 As Double, a3 As Double, a4 As Double
Dim b
a1 = Val(Text1.Text)
a2 = Val(Text2.Text)
a3 = Val(Text3.Text)
a4 = Val(Text4.Text)
If a1 = 0 Or a2 = 0 Or a3 = 0 Or a4 = 0 Then '假若参数输入不全,不计算
Command1.Enabled = False
Exit Sub
End If
b = Qfangweijiao(a1, a2, a3, a4)
Text5.Text = Format(b, "###.0000")
'Text5.Text = Str(b)
End Sub
Function Qfangweijiao(xn As Double, yn As Double, xm As Double, ym As Double) As Double
Dim c As Double, d As Double
c = gn(xn, xm)
Const PI = 3.1415926
If yn - ym = 0 And yn < 0 Then
yn = ym - 0.00000001
Qfangweijiao = 180
ElseIf yn - ym = 0 And yn > 0 Then
yn = ym + 0.00000001
Qfangweijiao = 90
Else
Qfangweijiao = Atn((xn - xm) / (yn - ym)) * 180 / PI + 180 * c '改进模式只在yn<>ym时成立,yn=ym时需单独考虑
End If
End Function
Function gn(r1 As Double, r2 As Double) ' 取符号函数
If r1 - r2 > 0 Then
gn = 2
ElseIf r1 - r2 < 0 Then
gn = 1
End If
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -