计算机测绘程序设计代码.doc
文本预览下载声明
计算机测绘程序设计实验代码
矩阵运算代码:
Option Base 1
Dim a() As Double
Dim b() As Double
Dim c() As Double
Private Sub Command1_Click()
Dim n1 As Integer
Dim m1 As Integer
Dim n2 As Integer
Dim m2 As Integer
Dim mystring() As String
Dim l() As String
mystring() = Split(Text1.Text, vbCrLf)
m1 = UBound(mystring, 1) - LBound(mystring, 1)
l() = Split(mystring(0), ) 第一行数据
n1 = UBound(l, 1) - LBound(l, 1) + 1
ReDim a(m1, n1)
For i = 1 To m1
l() = Split(mystring(i - 1), )
n1 = UBound(l, 1) - LBound(l, 1) + 1
For j = 1 To n1
a(i, j) = l(j - 1)
Next j
Next i
Dim mystring() As String
Dim l() As String
mystring() = Split(Text2.Text, vbCrLf)
m1 = UBound(mystring, 1) - LBound(mystring, 1)
l() = Split(mystring(0), ) 第一行数据
n1 = UBound(l, 1) - LBound(l, 1) + 1
ReDim b(m1, n1)
For i = 1 To m1
l() = Split(mystring(i - 1), )
n1 = UBound(l, 1) - LBound(l, 1) + 1
For j = 1 To n1
b(i, j) = l(j - 1)
Next j
Next i
ReDim c(m1, n1)
Call madd(a, b, c)
Text3.Text =
For i = 1 To m1
For j = 1 To n1
Text3.Text = Text3.Text + Str(c(i, j)) +
Next j
Text3.Text = Text3.Text + vbCrLf
Next i
End Sub
Sub madd(mtxA() As Double, mtxB() As Double, mtxC() As Double) 矩阵相加
Dim i As Integer, j As Integer
Dim m As Integer, n As Integer
m = UBound(mtxA, 1) - LBound(mtxA, 1) + 1
n = UBound(mtxA, 2) - LBound(mtxA, 2) + 1
For i = 1 To n
For j = 1 To m
mtxC(i, j) = mtxA(i, j) + mtxB(i, j)
Text3.Text = mtxC(i, j)
Next j
Next i
End Sub
角度与弧度的相互转换代码:
Public Function jdzh#(jd#, Optional srdw% = 0, Optional scdw% = 0)
Const pi# = 3.14159265358979
Dim d%, f%, m#, fh%
fh = Sgn(jd)
jd = Abs(jd)
Select Case srdw
Case 0
d = Int(jd)
f = Int((jd - d) * 100)
m = ((jd - d) * 100 - f) * 100
jdzh = d + f / 60 + m / 3600
Case 1
jdzh = jd
Case Else
jdzh = jd * 180 / pi
End Select
Select Case scdw
Case 0
jdzh = jdzh * pi / 180 * fh
Case 1
jdzh = jdzh * fh
Case 2
jdzh = jdzh * 60 * fh
Case 3
jdzh = jdzh * 3600 * fh
Case Else
d = Int
显示全部