1、数据处理 副本实训报告实训项目:测量数据计算实训实训时间:2014.11.3-2014.11.21实训地点:机房指导教师: 李金生 杨丹 彭博 王赫实训班级:测绘12- 1 班学生姓名【实验目的】1、对工程中的数据会用电子表格处理;2、掌握Visual Basic(VB)程序设计的基本理论、方法和应用;3、掌握VB程序应用于测绘专业的程序开发,理解程序设计在测绘数据处理中的作用和地位;4、掌握面向对象程序设计方法,应用测绘专业的基本技能,测绘专业模块程序包开发的基本方法。【实验内容】【实训题1】已知某交点的里程为K3+135.12m,测得偏角右=4020,圆曲线的半径R=120m,求圆曲线的要
2、素和主点里程。【实训题2】已知某圆曲线三个主点里程已知,半径为120m,细部点间距为10m,要求按整桩号法计算曲线上各细部点的偏角值。【实训题3】在JD2处设置圆曲线,半径R=1500 m,,转向角(右)=125928.0,细部点间距l=10m,完成如下计算:求圆曲线要素和主点里程,并检核里程计算;求圆曲线细部点独立坐标(以ZY为圆心,以ZY到JD方向为X轴,以ZY到圆心方向为Y轴);(整桩号法)求圆曲线细部点线路统一坐标;求直线段(点到ZY点)各细部点的线路统一坐标。点位里程X坐标Y坐标起点(JD1)K0+000.0004635266.008549016.171JD2(圆曲线)K1+796.
3、7904636033.124550640.975JD3K3+186.4044636329.044552000.214独立坐标系和线路坐标系夹角64.72667774度,1.129693621弧度主点点号X坐标Y坐标ZY点4635960.209 550486.537 QZ点4636023.948 550644.096 YZ点4636069.454 550807.852 【实训题4】制作一个程序集,程序集需要输入“用户名”和“密码”才能登陆【实训题5】登陆后程序集中包含2个程序需要设计,实现单击程序集中“水平角计算程序”则弹出“水平角计算”程序界面,单击“四等水准计算程序”则弹出“四等水准计算”程
4、序界面【实验内容】【实训题1】切线长 T=R*tan(/2)=44.072曲线长 L=R*(/180)=84.474外矢距 E=R*sec(/2)-1=7.837切曲差 D=2*T-L=3.67ZY里程=JD里程-T=k3+091.048YZ里程=ZY里程+L=k3+175.522QZ里程=YZ里程-L/2=k3+133.285JD里程=QZ里程+D/2=k3+135.12【实训题2】圆曲线细部点偏角计算(整桩号法)点号里程相邻细部点间弧长各细部点到起点的弧长偏角(度)偏角(度分秒)mmm度分秒ZY3091.05000000131008.958.952.13665514728112311010
5、18.954.52397933543126331201028.956.91130352265440431301038.959.29862770991755QZ3133.283.2842.2310.0816700410454531406.7248.9511.685951911419631501058.9514.0732760814423731601068.9516.46060027162738831701078.9518.84792446185052YZ3175.525.5284.4720.1657274120956【实训题3】切线长 T=R*tan(/2)=170.786曲线长 L=R*(/1
6、80)=340.106外矢距 E=R*sec(/2)-1=9.691切曲差 D=2*T-L=1.466ZY里程=JD里程-T=1626.004YZ里程=ZY里程+L=1966.110QZ里程=YZ里程-L/2=1796.507JD里程=QZ里程+D/2=1796.790点号里程弧长偏角弦长xyXY单位mm弧度mmmmmzy626.004 0.000 0.000 0.000 0.000 0.000 4635960.209 550486.537 1.000 636.000 9.996 0.003 9.996 9.996 0.033 4635964.447 550495.590 2.000 646.
7、000 19.996 0.007 19.996 19.995 0.133 4635968.625 550504.675 3.000 656.000 29.996 0.010 29.996 29.994 0.300 4635972.743 550513.788 4.000 666.000 39.996 0.013 39.995 39.991 0.533 4635976.801 550522.928 5.000 676.000 49.996 0.017 49.994 49.987 0.833 4635980.797 550532.095 6.000 686.000 59.996 0.020 59.
8、992 59.980 1.200 4635984.732 550541.288 7.000 696.000 69.996 0.023 69.990 69.971 1.633 4635988.605 550550.507 8.000 706.000 79.996 0.027 79.987 79.958 2.133 4635992.418 550559.752 9.000 716.000 89.996 0.030 89.983 89.942 2.699 4635996.168 550569.022 10.000 726.000 99.996 0.033 99.977 99.922 3.332 46
9、35999.856 550578.317 11.000 736.000 109.996 0.037 109.971 109.897 4.031 4636003.483 550587.636 12.000 746.000 119.996 0.040 119.964 119.868 4.797 4636007.047 550596.980 13.000 756.000 129.996 0.043 129.955 129.833 5.629 4636010.549 550606.346 14.000 766.000 139.996 0.047 139.945 139.793 6.528 463601
10、3.988 550615.736 15.000 776.000 149.996 0.050 149.934 149.746 7.493 4636017.365 550625.149 16.000 786.000 159.996 0.053 159.920 159.693 8.525 4636020.679 550634.584 qz796.057 170.053 0.057 169.962 169.689 9.629 4636023.948 550644.095 17.000 806.000 179.996 0.060 179.888 179.564 10.787 4636027.118 55
11、0653.519 18.000 816.000 189.996 0.063 189.869 189.488 12.017 4636030.242 550663.018 19.000 826.000 199.996 0.067 199.848 199.404 13.313 4636033.303 550672.538 20.000 836.000 209.996 0.070 209.825 209.311 14.675 4636036.301 550682.078 21.000 846.000 219.996 0.073 219.799 219.208 16.104 4636039.235 55
12、0691.638 22.000 856.000 229.996 0.077 229.771 229.096 17.598 4636042.105 550701.217 23.000 866.000 239.996 0.080 239.740 238.973 19.158 4636044.911 550710.816 24.000 876.000 249.996 0.083 249.707 248.840 20.784 4636047.653 550720.432 25.000 886.000 259.996 0.087 259.671 258.696 22.476 4636050.331 55
13、0730.067 26.000 896.000 269.996 0.090 269.632 268.540 24.234 4636052.945 550739.719 27.000 906.000 279.996 0.093 279.590 278.373 26.057 4636055.494 550749.389 28.000 916.000 289.996 0.097 289.545 288.193 27.945 4636057.979 550759.075 29.000 926.000 299.996 0.100 299.496 298.000 29.899 4636060.399 55
14、0768.778 30.000 936.000 309.996 0.103 309.445 307.794 31.919 4636062.754 550778.497 31.000 946.000 319.996 0.107 319.390 317.574 34.003 4636065.045 550788.231 32.000 956.000 329.996 0.110 329.331 327.341 36.153 4636067.270 550797.980 yz966.110 340.106 0.113 339.378 337.199 38.392 4636069.454 550807.
15、851 【实训题4】水平角计算代码Private Sub Command1_Click() “计算”按钮激发程序Dim dula%, fenla%, miaoLA%, duLB%, fenLB%, miaoLB%Dim duRA%, fenRA%, miaorA%, durB%, fenrB%, miaorB%Dim duHAL%, fenHAL%, miaoHAL%, duHAR%, fenHAR%, miaoHAR%Dim duWH%, fenWH%, miaoWH%, halfL#, halfR#, angle#dula = Val(Text1.Text): fenla = Val(Te
16、xt2.Text): miaoLA = Val(Text3.Text)duLB = Val(Text4.Text): fenLB = Val(Text5.Text): miaoLB = Val(Text6.Text)duRA = Val(Text7.Text): fenRA = Val(Text8.Text): miaorA = Val(Text9.Text)durB = Val(Text10.Text): fenrB = Val(Text11.Text): miaorB = Val(Text12.Text)If duLB dula Then duLB = duLB + 360halfL =
17、(durB - duRA) + (fenLB - fenla) / 60 + (miaoLB - miaoLA) / 3600If durB 40 Then MsgBox 半测回值超限,请检查观测和输入是否正确!”,“角差超限” Exit SubEnd Ifangle = (halfL + halfR) / 2duHAL = Int(halfL): halfL = (halfL - duHAL) * 60fenHAL = Int(halfL): halfL = (halfL - fenHAL) * 60: miaoHAL = Int(halfL + 0.5)duHAR = Int(halfR)
18、: halfR = (halfR - duHAR) * 60fenHAR = Int(halfR): halfR = (halfR - fenHAR) * 60: miaoHAR = Int(halfR + 0.5)duWH = Int(angle): angle = (angle - duWH) * 60fenWH = Int(angle): angle = (angle - fenWH) * 60: miaoWH = Int(angle + 0.5)Text13.Text = Str(duHAL): Text14.Text = Str(fenHAL): Text15.Text = Str(
19、miaoHAL)Text16.Text = Str(duHAR): Text17.Text = Str(fenHAR): Text18.Text = Str(miaoHAR)Text19.Text = Str(duWH): Text20.Text = Str(fenWH): Text21.Text = Str(miaoWH)End SubPrivate Sub Command2_Click() “清零”按钮激发程序Text1.Text = Text2.Text = Text3.Text = Text4.Text = Text5.Text = Text6.Text = Text7.Text =
20、Text8.Text = Text9.Text = Text10.Text = Text11.Text = Text12.Text = Text13.Text = Text14.Text = Text15.Text = Text16.Text = Text17.Text = Text18.Text = Text19.Text = Text20.Text = Text21.Text = Text1.SetFocusEnd SubPrivate Sub Command3_Click() “退出”按钮激发程序EndEnd Sub【实训题5】四等水准计算代码Private Sub cmdCheckCa
21、lc_Click() Dim i%, tDist 距离 tDist = 0 Dim totalDetH!, closeDetH! 累计高差和高差闭合差 For i = 1 To nMarks tDist = tDist + dis(i) Next totalDetH = 0 For i = 1 To nMarks 计算累计高差 totalDetH = totalDetH + detH(i) Next i 计算闭合差 startPoint = Val(txtStartPoint.Text) endPoint = Val(txtEndPoint.Text) If optAnnex.Value Th
22、en 附合水准 closeDetH = (endPoint - startPoint) - totalDetH Else 闭合水准和支水准 closeDetH = -totalDetH End If 检查闭合差是否超限 If closeDetH 0.04 * Sqr(tDist) Then 采用40*Sqr(L)来计算,单位是毫米 MsgBox 闭合差超限,测量成果不合格!, , 闭合差超限 txtShowResult.Text = txtShowResult.Text & 闭合差超限,测量成果不合格! Exit Sub Else MsgBox 闭合差合格,继续计算转点高程!, , 闭合差合格
23、 End If Dim temp! temp = startPoint txtShowResult.Text = txtShowResult.Text & 平差后的高程为: & vbCrLf For i = 0 To nMarks temp = temp + detH(i) + closeDetH * dis(i) / tDist txtShowResult.Text = txtShowResult.Text & ( & Str(i) & ): & Str(Format(temp, 0.000) & vbCrLf Next iEnd SubPrivate Sub cmdExit_Click()
24、 EndEnd SubPrivate Sub cmdInput_Click() 检查输入的几个文本框:是否已经输入了 If txtStartPoint.Text = 0 Then MsgBox 还没有输入起始点高程! Exit Sub End If If txtEndPoint.Text = 0 And optAnnex.Value = True Then MsgBox 还没有输入终点高程! Exit Sub End If If txtBMNum.Text = 0 And optAnnex.Value = True Then MsgBox 还没有输入测站数! Exit Sub End If f
25、rmInput.ShowEnd SubPrivate Sub optAnnex_Click() txtEndPoint.Enabled = optAnnex.ValueEnd SubPrivate Sub optClose_Click() txtEndPoint.Enabled = Not optClose.ValueEnd SubPrivate Sub optSpur_Click() txtEndPoint.Enabled = Not optSpur.ValueEnd SubPrivate Sub txtStartPoint_LostFocus() If Not IsNumeric(txtS
26、tartPoint.Text) Then MsgBox 输入的高程含有非数字字符! txtStartPoint.Text = txtStartPoint.SetFocus Exit Sub End If If Val(txtStartPoint.Text) 5000 Or Val(txtStartPoint.Text) 5000 Or Val(txtEndPoint.Text) -100 Then MsgBox 输入的高程有误! txtEndPoint.Text = txtEndPoint.SetFocus Exit Sub End If endPoint = Val(txtEndPoint.Text)End SubPrivate Sub txtBMNum_LostFocus() If Not IsNumeric(txtBMNum.Text) Then MsgBox 输入的测站数含有非数字字符或尚未输入! txtBMNum.Text = txtBMNum.SetFocus Exit Sub End If nMarks = Val(txtBMNum.Text) If
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1