?? map_form.frm
字號:
Line Input #number, ee
Line Input #number, ee
Line Input #number, ee
GoTo 20
Else
region_num = ii
End If
End Sub
Private Sub Output1(grid_co, grid_dep, odds, postdeviate, number, number1, number2, number3, xmin, ymin, xmax, ymax, m, k, l, strp)
Dim i As Integer, j As Integer
Dim zmax As Double, zmin As Double
'Output the *.mif file
Print #number, "Version 300"
Print #number, "Charset ";
Print #number, """";
Print #number, "WindowsSimpChinese";
Print #number, """"
Print #number, "Delimiter ";
Print #number, """";
Print #number, ",";
Print #number, """"
Print #number, "CoordSys NonEarth Units ";
Print #number, """";
Print #number, "km";
Print #number, """";
Print #number, " Bounds ("; xmin; ","; ymin; ") ("; xmax; ","; ymax; ")"
Print #number, "Columns"; " "; m + 5
Print #number, "CellNumber"; " "; "Integer"
Print #number, "DepositMap"; " "; "Integer"
For i = 3 To m + 2
Print #number, "MapLayer" + CStr(i - 2); " "; "Integer"
Next i
Print #number, strp; " "; "Float"
Print #number, "postdev"; " "; "Float"
Print #number, "TargetGrade"; " "; "Integer"
Print #number, "Data"
Print #number,
For i = 1 To k * l
Print #number, "Region"; " "; 1
Print #number, 5
Print #number, grid_co(i, 3); " "; grid_co(i, 4)
Print #number, grid_co(i, 5); " "; grid_co(i, 6)
Print #number, grid_co(i, 7); " "; grid_co(i, 8)
Print #number, grid_co(i, 9); " "; grid_co(i, 10)
Print #number, grid_co(i, 11); " "; grid_co(i, 12)
Print #number, " Pen (1,2,0)"
Print #number, " Brush (2,12648384,16777215)"
Print #number, " Center"; " "; grid_co(i, 1); " "; grid_co(i, 2)
Next i
'Output the *.mid file
For i = 1 To k * l
Write #number1, i,
For j = 1 To m + 1
Write #number1, grid_dep(i, j),
Next j
Write #number1, odds(i), postdeviate(i),
If odds(i) < 0.1 Then
Write #number1, 0
ElseIf odds(i) >= 0.1 And odds(i) < 0.2 Then
Write #number1, 1
ElseIf odds(i) >= 0.2 And odds(i) < 0.3 Then
Write #number1, 2
ElseIf odds(i) >= 0.3 And odds(i) < 0.4 Then
Write #number1, 3
ElseIf odds(i) >= 0.4 And odds(i) < 0.5 Then
Write #number1, 4
ElseIf odds(i) >= 0.5 And odds(i) < 0.6 Then
Write #number1, 5
ElseIf odds(i) >= 0.6 And odds(i) < 0.7 Then
Write #number1, 6
ElseIf odds(i) >= 0.7 And odds(i) < 0.8 Then
Write #number1, 7
ElseIf odds(i) >= 0.8 And odds(i) < 0.9 Then
Write #number1, 8
ElseIf odds(i) >= 0.9 Then
Write #number1, 9
End If
Next i
'Output posterior probability data to a Surfer grid file (*.grd)
zmin = 9999999999#
zmax = -9999999999#
For i = 1 To k * l
If odds(i) < zmin Then
zmin = odds(i)
End If
If odds(i) > zmax Then
zmax = odds(i)
End If
Next i
Print #number2, "DSAA"
Print #number2, l; " "; k
Print #number2, xmin; " "; xmax
Print #number2, ymin; " "; ymax
Print #number2, zmin; " "; zmax
For i = 1 To k
For j = 1 To l
If ((i - 1) * l + j) Mod 10 = 0 Then
Print #number2, odds((i - 1) * l + j)
Else
Print #number2, odds((i - 1) * l + j); " ";
End If
Next j
Print #number2,
Next i
'Output postdeviation data to a Surfer grid file (*.grd)
zmin = 9999999999#
zmax = -9999999999#
For i = 1 To k * l
If postdeviate(i) < zmin Then
zmin = postdeviate(i)
End If
If postdeviate(i) > zmax Then
zmax = postdeviate(i)
End If
Next i
Print #number3, "DSAA"
Print #number3, l; " "; k
Print #number3, xmin; " "; xmax
Print #number3, ymin; " "; ymax
Print #number3, zmin; " "; zmax
For i = 1 To k
For j = 1 To l
If ((i - 1) * l + j) Mod 10 = 0 Then
Print #number3, postdeviate((i - 1) * l + j)
Else
Print #number3, postdeviate((i - 1) * l + j); " ";
End If
Next j
Print #number3,
Next i
End Sub
Private Sub Output(grid_co, grid_dep, odds, number, number1, number2, xmin, ymin, xmax, ymax, m, k, l, strp)
Dim i As Integer, j As Integer
Dim zmax As Double, zmin As Double
'Output the *.mif file
Print #number, "Version 300"
Print #number, "Charset ";
Print #number, """";
Print #number, "WindowsSimpChinese";
Print #number, """"
Print #number, "Delimiter ";
Print #number, """";
Print #number, ",";
Print #number, """"
Print #number, "CoordSys NonEarth Units ";
Print #number, """";
Print #number, "km";
Print #number, """";
Print #number, " Bounds ("; xmin; ","; ymin; ") ("; xmax; ","; ymax; ")"
Print #number, "Columns"; " "; m + 4
Print #number, "CellNumber"; " "; "Integer"
Print #number, "DepositMap"; " "; "Integer"
For i = 3 To m + 2
Print #number, "MapLayer" + CStr(i - 2); " "; "Integer"
Next i
Print #number, strp; " "; "Float"
Print #number, "TargetGrade"; " "; "Integer"
Print #number, "Data"
Print #number,
For i = 1 To k * l
Print #number, "Region"; " "; 1
Print #number, 5
Print #number, grid_co(i, 3); " "; grid_co(i, 4)
Print #number, grid_co(i, 5); " "; grid_co(i, 6)
Print #number, grid_co(i, 7); " "; grid_co(i, 8)
Print #number, grid_co(i, 9); " "; grid_co(i, 10)
Print #number, grid_co(i, 11); " "; grid_co(i, 12)
Print #number, " Pen (1,2,0)"
Print #number, " Brush (2,12648384,16777215)"
Print #number, " Center"; " "; grid_co(i, 1); " "; grid_co(i, 2)
Next i
'Output the *.mid file
For i = 1 To k * l
Write #number1, i,
For j = 1 To m + 1
Write #number1, grid_dep(i, j),
Next j
Write #number1, odds(i),
If odds(i) < 0.1 Then
Write #number1, 0
ElseIf odds(i) >= 0.1 And odds(i) < 0.2 Then
Write #number1, 1
ElseIf odds(i) >= 0.2 And odds(i) < 0.3 Then
Write #number1, 2
ElseIf odds(i) >= 0.3 And odds(i) < 0.4 Then
Write #number1, 3
ElseIf odds(i) >= 0.4 And odds(i) < 0.5 Then
Write #number1, 4
ElseIf odds(i) >= 0.5 And odds(i) < 0.6 Then
Write #number1, 5
ElseIf odds(i) >= 0.6 And odds(i) < 0.7 Then
Write #number1, 6
ElseIf odds(i) >= 0.7 And odds(i) < 0.8 Then
Write #number1, 7
ElseIf odds(i) >= 0.8 And odds(i) < 0.9 Then
Write #number1, 8
ElseIf odds(i) >= 0.9 Then
Write #number1, 9
End If
Next i
'Output the Surfer file (*.grd)
zmin = 9999999999#
zmax = -9999999999#
For i = 1 To k * l
If odds(i) < zmin Then
zmin = odds(i)
End If
If odds(i) > zmax Then
zmax = odds(i)
End If
Next i
Print #number2, "DSAA"
Print #number2, l; " "; k
Print #number2, xmin; " "; xmax
Print #number2, ymin; " "; ymax
Print #number2, zmin; " "; zmax
For i = 1 To k
For j = 1 To l
If ((i - 1) * l + j) Mod 10 = 0 Then
Print #number2, odds((i - 1) * l + j)
Else
Print #number2, odds((i - 1) * l + j); " ";
End If
Next j
Print #number2,
Next i
End Sub
Private Sub Command1_Click()
' Set CancelError is True
CommonDialog1.CancelError = True
On Error GoTo errhandler
' Set flags
CommonDialog1.Flags = cdlOFNHideReadOnly
' Set filters
CommonDialog1.Filter = "Text Files(*.txt)|*.txt"
' Specify default filter
CommonDialog1.FilterIndex = 2
' Display the Open dialog box
CommonDialog1.ShowOpen
' Display name of selected file
Text3.Text = CommonDialog1.filename
Exit Sub
errhandler:
'User pressed the Cancel button
ShowError
Exit Sub
End Sub
Private Sub Command2_Click()
' Set CancelError is True
CommonDialog1.CancelError = True
On Error GoTo errhandler
' Set flags
CommonDialog1.Flags = cdlOFNHideReadOnly
' Set filters
CommonDialog1.Filter = "MapInfo Interchange(*.mif)|*.mif"
' Specify default filter
CommonDialog1.FilterIndex = 2
' Display the Open dialog box
CommonDialog1.ShowOpen
' Display name of selected file
Text4.Text = CommonDialog1.filename
Exit Sub
errhandler:
'User pressed the Cancel button
ShowError
Exit Sub
End Sub
Private Sub ETM_Click()
SetHourglass
'THIS PROGRAM IS FOR EVIDENCE THEORY MODEL PROCEDURE
'ORIGINATED BY: CHEN YONGLIANG
'AFFILIATION: JILIN UNIVERSITY, CHANGCHUN P.R.CHINA
'DATE: OCTOBER 20,2000
Dim xmin As Double, xmax As Double, ymin As Double, xo As Double, yo As Double, ymax As Double, xx As Double, yy As Double, yg As Double
Dim dx As Double, dy As Double
Dim m As Integer, np As Integer, k As Integer, l As Integer
Dim grid_no As Integer, i As Integer, ii As Integer, ij As Integer, j As Integer, deposit_num As Integer, ixx As Integer, iyy As Integer
Dim grid_co() As Double, deposit_co(1000, 2) As Double, evidence_co(10000, 2) As Double, joint_co(100) As Double
Dim grid_dep() As Integer, point_num(1000) As Integer
Dim cf() As Double, bpa() As Double
Dim filename As String * 80, filename1 As String * 80, filename2 As String * 80
Dim region_num As Integer, kk As Integer, i1 As Integer, kkks As Integer, iii As Integer, jjj As Integer
Dim kks As Integer, kkd As Integer, kke1 As Integer, kke2 As Integer, kke As Integer, kkef As Integer
Dim xs As Double, xx1 As Double, xx2 As Double, xx3 As Double, yy1 As Double, yy2 As Double, yy3 As Double
Dim ccc As Double, py As Double, pyz As Double, pyzf As Double, scf As Double, scf1 As Double, mincf As Double
Dim myz As Double, myf As Double, km As Double
Dim file() As String * 80
'The number of evidences
m = Val(Text1.Text)
'The number of lines
k = Val(Text2.Text)
ReDim file(2 * m + 1)
On Error GoTo errprint
'Open *.txt file and input map layer file names
filename = Text3.Text
Open filename For Input As #1
For i = 1 To 2 * m + 1
Input #1, file(i)
Next i
Close #1
'Open the *.mif file and input the data of deposit map layer
filename = file(1)
Open filename For Input As #1
Call InputDep(deposit_co, deposit_num, 1, xmin, ymin, xmax, ymax)
Close #1
'The ratio between the width and height of the map area
ccc = (xmax - xmin) / (ymax - ymin)
'The number of columns
l = CInt(k * ccc)
dx = (xmax - xmin) / CDbl(l)
dy = (ymax - ymin) / CDbl(k)
ReDim grid_co(k * l, 12), grid_dep(k * l, m + 1), bpa(k * l), cf(m, 3)
'Generate the uniform grid cells
For i = 1 To k
For j = 1 To l
grid_no = (i - 1) * l + j
xx = xmin + j * dx - dx / 2#
yy = ymin + i * dy - dy / 2#
xx1 = xx - dx / 2#
yy1 = yy - dy / 2#
xx2 = xx + dx / 2#
yy2 = yy + dy / 2#
'The X_Y coordinates of the center of the cell
grid_co(grid_no, 1) = xx
grid_co(grid_no, 2) = yy
'The four boundaries of the cell
grid_co(grid_no, 3) = xx1
grid_co(grid_no, 4) = yy1
grid_co(grid_no, 5) = xx2
grid_co(grid_no, 6) = yy1
grid_co(grid_no, 7) = xx2
grid_co(grid_no, 8) = yy2
grid_co(grid_no, 9) = xx1
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -