测绘程序设计试验指导书_第1页
测绘程序设计试验指导书_第2页
测绘程序设计试验指导书_第3页
测绘程序设计试验指导书_第4页
测绘程序设计试验指导书_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、测绘遥感程序设计实验指导书(Visual C+.net )(供测绘工程专业用)(2015年修订)戴吾蛟编二零一五年三月中南大学测绘与遥感科学系刖言测绘遥感程序设计上机实验是学习本门课程的重要环节之一, 实验的设置是 为了配合课堂教学,使学生熟练掌握和深入理解课堂教学内容, 进一步强化测绘 程序设计、测量学及测量平差原理的理解,掌握利用 Visual C+. net进行常用的 测量程序以及控制网的间接平差程序设计。实验内容本门课程必做的实验有(在 Visual C+, net 2008环境下):1. Visual C+.net环境、基本控件及简单程序设计(三角形面积计算)2. 控制结构程序设计(

2、方位角计算、地心坐标至大地坐标转换)3. 数组、指针(多边形面积计算)4. 函数(交会定点函数设计、高斯投影正反算程序设计)5. 类的创建(大地四边形类设计、角度类设计)6. 文件(Cass测量数据整理)7. 图形程序设计(位移序列曲线图形程序设计)8. 常用测量计算(无定向导线简易计算程序设计)9. 平差程序设计(水准网间接平差程序设计)修订说明:由于2012版培养方案增加了 8课时,实验课时也相应增加了 4课时。 为此,本实验指导书将高斯投影正反算提前, 并要求以函数的形式编写。增加了 大地四边形类设计以及无定向导线简易计算程序设计。实验1 Visual C+.net 环境和简单程序设计、

3、实验目的*掌握Visual S的安装和启动。 了解VC+ 2008的菜单系统、工具栏和各种基本窗体*理解VC+.net开发应用程序的步骤。*掌握基于对话框的程序设计。掌握按钮、文本框和标签框的基本使用方法掌握使用MSDN帮助文档、实验内容1. 启动与退出VC+.net,熟悉VC+.net的开发环境,通过向导生成基于对话 框的应用程序。使用 MSDN查看命令按钮、标签和文本框的主要属性和方 法。2. 打开 Microsoft visual studio 2008 文档,浏览“ Visual studio 文档”目录下的 内容,并从“ Visual studio文档->Visual C+-&

4、gt;示例”目录下下载一个程序, 编译并运行之。3. 设计一个已知三边边长计算三角形面积的程序。计算模型如下:海伦公式:提示:S =p(p-a)(p-b)(p-c),其中 p 二(1) 在【文件】菜单上执行【新建】,然后选择“项目”。在【项目类型】窗格中,选择【Visual C+I下的“ MFC项。在【模板】窗格中,选择“ MFC应用程序”模板,输入应用程序名称“xxxx”。按 向导创建名为“ xxxxx ”的 MFC应用程序。(3)在窗体上放置4个文本框、4个静态框、3个命令按钮(其中两个缺省);设置控件属性,如Static1的Caption属性设置成“ a=”,用于提示Edit框的输入边长

5、a;把“取消”按钮的Caption属性改为“退出”;双击前两个按钮,生成Click消息函数,注释掉重载函数“ On0K()”。El void CTriiAreaDlg: :0nBnClicked0k()*/ TODO:在此加控件通知处理程序代码-/ OnOK (): void CTriiAreaDlg; :OnBnClickedCancel ()| 1/ TODO:在此加控件通知处理程序代码-/ QnCancel 0;)(6) 为4个Edit控件添加绑定变量TriAreaDlg,h TriAr&dDlgxpp THArtUC - IDD TEA_DIALOG - Dialog|i i

6、I l> I I I If三角算a= 示例编辑框A35WCDb=示例编辑框复制閃站姑Pc-示例漁礙X筒顒D)S-示例卿冒框添力:事1理理1呈序泊插A ActiveX控彳牛(X)二七勸漢©计算猜除瀚礙量“.按内容谓整K屮b<后左对齐(L)I-lTP顶鋳对开刼朗记键N)固fite(R)(7) 在相应的函数中添加代码;avoid CTriAreaDlg: :OnBnClickedOk()/ TODO:在此添加控件通知处理程序代码 Updat eData (TRUE);double p;p= (a+b+c)/2;s=sqrt (p* (p-a)* (p-b)* (p-c);Upd

7、at eData(?ALSE);/ OnOK ():1 void CTriAreaDlg: :0nBnClickedBtnCleair () / TOO:在此添加控件通知处理程序代码 a=10;blO;c=10;|3=10,UpdateData(FALSE) ;| (8) 运行和调试程序;(9) 保存应用程序。I实验2控制结构程序设计、实验目的*掌握VC+.net语言的基本语法;理解顺序结构、选择结构和循环结构程序设计的特点及应用;掌握对基于对话框的MFC应用程序设计方法;掌握一些简单算法。、实验内容1. 编写一个方位角计算程序。提示:先使用反正切函数计算,然后利用坐标增量的符号来判断所在的象

8、限A 二 arctg dydxJIV(+x_-y)1(+x+y)ynin(-X+y)北西南东2. 设计同一参考椭球下的三维地心坐标 (笛卡儿坐标系)与大地坐标系转换的程 序。(提示:用dowhile迭代,B、H初始为0进行迭代,直到H的精度达到0.00001 米)X = (N +H)cosBcosLY =(N H)cosBs inLZ 二N(1 -e2) HsinBL = arcta n Y 注意 :东经 0180 (Y>0),西经:0-180(Y<0) M丿B = arcta n&(X2 +Y2)、(1 e2N/(N +H)丿X2 YcosBa2 -b-a.1e2 sin

9、2 B式中,B、L、H为椭球面上的大地纬度、大地经度、大地高; X、丫、Z为空间直 角坐标;N为卯酉圈曲率半径,e为椭球的偏心率,a为椭球的长半径,b为椭球 的短半径。 (WGS8椭球参数:长半径 a=6378137m扁率a =1/298.257223563 )实验3数组与指针一、实验目的掌握函数的定义、引用及应用方法。二、实验内容1. 编写一个求任意多边形面积的程序。 提示:通过界面输入数据,并把数据保存 在一个二维数组或一个一维的自定义结构体类型的数组中, 然后再进行计算。要 求计算部分写成函数的形式,使计算程序与界面无关。动态数组创建动态数组结构体的定义多边形面积计算原理及算法计算原理:

10、xoV4-3r兀%例如上图: 1111p =:(XiX2)(y2-y1)-(X2X3)(y3-y2)-(X3X4)(y4 -y3) -(X4xj" - 甬2 2 2 2面积计算的算法:经整理后得:1 nP(Xj 1 Xj(Yi 1 -YJ (i =1,2, ,n;当 i 二 n时,i 仁1)2 y实验4函数、实验目的掌握函数的定义、引用及应用方法。二、实验内容1. 交会定点计算函数设计把前方交会、测边交会、后方交会程序写成函数的形式,然后再通过主程序 调用。提示:后方交会计算函数设计思路(1)基本原理及计算公式_巴工曲+ Pbb + P亡厂巴+马+耳1 p 巴+& + &am

11、p;1tan« tanZXcotZ/4- cotatan a- tan 丄41tan /? tail ZBcotZ5- cot/?tan p - tanZ51 tan / tan Z CcotZC 亠 cot/tun 7 - tan ZC号=若将Pa、Pb、Pc看成权,则P点的坐标即为三个已知点的加权平均值(2)计算程序设计步骤 设计界面,用于输入3个已知点的坐标和三个观测角、1和,以及用于输出待定点坐标的文本框(12个)、静态标签框和 Button按钮; 定义文本框控件变量(Value); 创建后方交会定点计算函数,函数的输入为三个观测角和三个已知点的坐标,输出为待定点坐标,输出可

12、以用引用参数的方式输出,具体计算步骤;a. 根据已知点计算三个内角A、B、C;b. 计算 Tan( :)、Tan (J、Tan( )、Tan( A)、Tan (B)、Tan(C);c. 计算 Pa、Pb、Pc;d. 计算待定点坐标Xp、Yp。创建“计算” Butt on按钮的Click事件函数,在该事件函数中调用后方交 会计算函数,并在相应的文本框中显示计算结果。2.高斯投影正反算计算函数设计编写高斯投影正算与反算的两个函数,并设计简单界面对函数计算的正确性进行测试。正算公式:=X 伫sinBcosBl 2sin Bcos3 B(5t2 9 2 4 4)l 42P"224 PNsin

13、 Bcos5 B(6158t2 t4)l 6720:二NcosBlP“6PwCOSBU-t22)l 3N-5cos5 B(18t2 t4 14 2 -58 2t2)l 5120 a5a- e2s in2Btan BPa2 -b2e =ab?'是弧度转换为秒的转换单位,l 是经度L同当前带中央子午线的差值,单位为秒。X 为当前点到赤道的子午线长度。2X = a(1 - e )(A0B A2 sin 2B A4 sin 4B A6 sin 6B A8 sin 8B)A d 3 . _ 45 4 . 350 6( 11025 8 A。"+64e+512 +16384CA= T(Te

14、 +64e +512e + 16384e)A ±(1521088204 - 4 (6451216384)A 1 z 35 62520 8、Afl-6T(512e +16384e)8 v16384*长半轴第一偏心率反算公式:Bftf-2M f Nf y 24M f N?(5tf 2 y222 24f f -9 ftjy -tf2465 (61 90tf 45tf)y 720MfNf112231 y $(1 2tf2)y3Nf cosBf 6Nf cosBf12422 2 5歸赢;(5 28tf 24tf 6 f 8 5l是要求的点到中央子午线的经度差,Bf为底点纬度下标“f”表示与Bf

15、有关的量tf =ta nBfe cosBfNf1 e 2 cos2 BfNfa1 - e2 sin2 BfBf 二Bosin 2B0 K0sin2B°K2sin2BogK6sin2B。”Ba(r2e2iAK _Lf+45e4+35Oe6+n025 x._ 2 1 46451216384iv 1 r63 4 , 1108 6 58239 跖K厂貧+16384ev 1604 & 68484 冷K*=T(H2e + 16384° J丘 I r26328 时瓦丁而诽1X = X 即,y=0时x所对应道的子午弧长注意:高斯投影正反算公式比较复杂,编写程序时变量定义一定要十分的

16、清晰实验5类的创建一、实验目的1. 掌握面向对象编程基本思想2. 掌握VC+.net中创建类3. 掌握建立和使用对象4. 掌握运算符号重载5. 理解类的继承和多态性二、实验内容1.大地四边形类设计要求:设计一个大地四边形类,注意大地四边形的基本属性,功能上只要求能够 设置和返回已知点坐标、8个观测角度、待定点近似坐标计算以及闭合差的计算。提示:大地四边形(如图所示)以 AB为基线,具有对角线的四边形,它是建立 桥梁控制网常用的形式,一般采用条件平差进行计算,本实验中仅要求采用前方 交会的方法计算C和D点的近似坐标。大地四边形W 二比 a6 a7 a8 T80三角形闭合差w2 =印 a2 a3

17、a4 -180 w3 = q + a2 + a7 + a8 _180 WdUsiga,%'极条件闭合差sina4 sin( + a8)s ina62. 角度类设计要求该类具有度分秒至度的换算、度至度分秒的换算、度与弧度的换算等功能。 提示:设置一个角度大小属性,并设定该属性为缺省属性;另设一个状态属性, 表示当前设置的角度大小的形式;度分秒、度、弧度间的相互转换的方法;定义 运算符号(加、减)方法,使得角度类能够像一种普通的数据类型样的方便使用; 用设计好的角度类重新编写后方交会定点程序。实验6文件一、实验目的掌握文件对话框的使用方法。掌握C+文件操作的一般步骤及实现方法。 了解MFC

18、文件操作的特点及使用方法。二、实验内容1.编制简单的Cass数据文件进行数据整理的程序。整理后的数据文件中要求无 重复点数据,且数据按点号大小的升序进行排序。 要求整理后的数据按与原始数 据文件同样的格式保存为另外一个文件示例数据“民用园燃气.dat ”文件数据格式:总点数点号,编码,X,Y,H例如:iso1,2-010. 197.513,4SS47 B 951r 2.§2 715口6.595,66519,2.06315-6, 6,666,5372,656“O 156 + 75146:45825;5217.sbg 154 6 - £52 f 48645 B 705 2 65

19、515盘占亠4口4才46652008.2 1自占141546x341z 4S647口682 231ISs,1540.418 4S6372味咗5fsf1513.005 48809322玄-6fsf151Q»5S9,487851©寸8,C2-OOi6r 1742 465 48S343072.64622-11007,1552 154 48S76 5月孕3L 6933say# 1501.S7BZ 48868 吕呂爼声盘口439,3, IS-IO.aST, 4S677 吕址05冲10,3154.93x 4S653吕#2 0日百要求:a. 用SaveFileDialog和OpenFil

20、eDialog控件获取文件打开或保存的文件 名。b. 自定义一个测量点数据结构体,其元素包括:点号,编码,X,Y,Hc. 用文本框显示原始数据和整理后的数据d. .按编程规范进行编码提示:a. 读数据、保存数据、判断一个点数据是否已经存在、排序、在文本框中 显示文件内容等可以分别定义成一个子过程或函数。b. 基本流程:c. 编程技巧实验7图形程序设计、实验目的*掌握VC+.net坐标系和各项设置方法。掌握GDI绘图方法。理解交互式图形程序设计、实验内容1.下列数据为一变形监测点的24期位移监测结果(分别为X,Y,H),编制程序绘 制出该点的变形曲线图,每个方向一个位移序列图。X方向变形曲线图3

21、2.58532.58X32.57532.57时间变形曲线示意图2432.5801-52.78760.136932.5786-52.78920.138032.5784-52.78450.141132.5812-52.78520.139332.5782-52.78630.139432.5791-52.78520.135432.5788-52.78410.141432.5788-52.78170.137532.5745-52.78330.135932.5815-52.78540.132732.5822-52.78410.135832.5839-52.78260.136132.5820-52.7852

22、0.133932.5800-52.78630.132532.5792-52.78450.141632.5807-52.78340.139532.5778-52.78460.141232.5792-52.78430.137132.5794-52.78330.140632.5806-52.78410.141132.5800-52.78630.138032.5785-52.78400.136832.5811-52.78480.141232.5828-52.78630.1356实验8常用测量程序设计、实验目的巩固类的创建与使用*掌握数组参数的传递掌握常用测绘程序设计的技巧、实验内容1.设计一个无定向导

23、线简易计算的程序。要求自己定义文件格式,把下图中数据编写至文件中,然后通过读取文件 的形式获取所有数据,计算结果也写入结果文件中。2 845.6902 039.9X0TrTV阳a 丁于“门一十护 20-15430"T= 748542 382.9歹2 371Q40无定向导线计算基本步骤:躺长度山匚和假定方位角心然后按下式计算无定向导线闭合边的方位角絆(已 暂一假定)、闭合边艮度比R(已知值'观利值)和导线的全长相对闭合着丁:e =切匚ancT LfiC _闭合边的方位角差用于改正各导线边的假宦方位角长度比用下改正导线边的现测 长度,全长相对闭合差衛的线测最的梢度*相对闭合差容许

24、民改正各导线边的方位角 祕长,设4和耳为亍线边的假定方位兔和改止后的方位用和&为导线边的观测 边妆和改正舀的边怏*氏计算公式为实验9平差程序设计基础、实验目的巩固过程的定义与调用巩固类的创建与使用巩固间接平差模型及平差计算掌握平差程序设计的基本技巧与步骤、实验内容水准网平差程序设计。设计一个水准网平差的程序,要求数据从文件中读取, 计算部分与界面无关。1.水准网间接平差模型: 二:H伐=H2HL, V| 二 H ; - H; x2 - 捲 误差方程:V, =b|Xi b2x2 - f, 其中:b = -1, b2 = 1, fi = L - ;: H 2i2. 计算示例:Li 知 A、B 点爲 fi' I: 5+ OG0mt 鬥ei 札000m,为确定Xi

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论