《测绘程序设计》实验指导书.doc

上传人:xin****828 文档编号:6589768 上传时间:2020-02-29 格式:DOC 页数:25 大小:1.83MB
返回 下载 相关 举报
《测绘程序设计》实验指导书.doc_第1页
第1页 / 共25页
《测绘程序设计》实验指导书.doc_第2页
第2页 / 共25页
《测绘程序设计》实验指导书.doc_第3页
第3页 / 共25页
点击查看更多>>
资源描述
测绘遥感程序设计实验指导书(Visual C+.net)(供测绘工程专业用)(2015年修订)戴吾蛟 编二零一五年三月中南大学测绘与遥感科学系前言测绘遥感程序设计上机实验是学习本门课程的重要环节之一,实验的设置是为了配合课堂教学,使学生熟练掌握和深入理解课堂教学内容,进一步强化测绘程序设计、测量学及测量平差原理的理解,掌握利用Visual C+.net进行常用的测量程序以及控制网的间接平差程序设计。实验内容本门课程必做的实验有(在Visual C+.net 2008 环境下):1. Visual C+.net环境、基本控件及简单程序设计(三角形面积计算)2. 控制结构程序设计(方位角计算、地心坐标至大地坐标转换)3. 数组、指针(多边形面积计算)4. 函数(交会定点函数设计、高斯投影正反算程序设计)5. 类的创建(大地四边形类设计、角度类设计)6. 文件(Cass测量数据整理)7. 图形程序设计(位移序列曲线图形程序设计)8. 常用测量计算(无定向导线简易计算程序设计)9. 平差程序设计(水准网间接平差程序设计)修订说明:由于2012版培养方案增加了8课时,实验课时也相应增加了4课时。为此,本实验指导书将高斯投影正反算提前,并要求以函数的形式编写。增加了大地四边形类设计以及无定向导线简易计算程序设计。 实验1 Visual C+.net环境和简单程序设计一、实验目的 掌握Visual Stadio.net的安装和启动。 了解VC+ 2008的菜单系统、工具栏和各种基本窗体。 理解VC+.net开发应用程序的步骤。 掌握基于对话框的程序设计。 掌握按钮、文本框和标签框的基本使用方法 掌握使用MSDN帮助文档二、实验内容1. 启动与退出VC+.net,熟悉VC+.net的开发环境,通过向导生成基于对话框的应用程序。使用MSDN查看命令按钮、标签和文本框的主要属性和方法。2. 打开Microsoft visual studio 2008 文档,浏览“Visual studio 文档”目录下的内容,并从“Visual studio 文档-Visual C+-示例”目录下下载一个程序,编译并运行之。3. 设计一个已知三边边长计算三角形面积的程序。计算模型如下:海伦公式:,其中提示:(1)在【文件】菜单上执行【新建】,然后选择“项目” 。 (2)在【项目类型】窗格中,选择【Visual C+】下的“MFC”项。在【模板】窗格中,选择“MFC 应用程序”模板,输入应用程序名称“”。按向导创建名为“”的 MFC应用程序。(3)在窗体上放置4个文本框、4个静态框、3个命令按钮(其中两个缺省);(4)设置控件属性,如Static1的Caption属性设置成“a=”,用于提示Edit框的输入边长a;(5)把“取消”按钮的Caption属性改为“退出”;双击前两个按钮,生成Click消息函数,注释掉重载函数“OnOK()”。 (6)为4个Edit控件添加绑定变量。(7)在相应的函数中添加代码;(8)运行和调试程序;(9)保存应用程序。实验2 控制结构程序设计一、实验目的 掌握VC+.net语言的基本语法; 理解顺序结构、选择结构和循环结构程序设计的特点及应用; 掌握对基于对话框的MFC应用程序设计方法; 掌握一些简单算法。二、实验内容 1.编写一个方位角计算程序。提示:先使用反正切函数计算,然后利用坐标增量的符号来判断所在的象限。2.设计同一参考椭球下的三维地心坐标(笛卡儿坐标系)与大地坐标系转换的程序。(提示:用dowhile迭代,B、H初始为0进行迭代,直到H的精度达到0.00001米) 注意:东经0180(Y0),西经:0-180(Y0)式中,B、L、H为椭球面上的大地纬度、大地经度、大地高;X、Y、Z为空间直角坐标;N为卯酉圈曲率半径,e为椭球的偏心率,a为椭球的长半径,b为椭球的短半径。 (WGS84椭球参数:长半径a=6378137m,扁率=1/298.257223563)实验3 数组与指针一、实验目的 掌握函数的定义、引用及应用方法。二、实验内容1.编写一个求任意多边形面积的程序。提示:通过界面输入数据,并把数据保存在一个二维数组或一个一维的自定义结构体类型的数组中,然后再进行计算。要求计算部分写成函数的形式,使计算程序与界面无关。动态数组创建动态数组 l 结构体的定义 多边形面积计算原理及算法 计算原理: 例如上图:面积计算的算法: 经整理后得:实验4 函数一、实验目的 掌握函数的定义、引用及应用方法。二、实验内容1.交会定点计算函数设计把前方交会、测边交会、后方交会程序写成函数的形式,然后再通过主程序调用。提示:后方交会计算函数设计思路(1)基本原理及计算公式若将Pa、Pb、Pc看成权,则P点的坐标即为三个已知点的加权平均值(2)计算程序设计步骤设计界面,用于输入3个已知点的坐标和三个观测角a、b和g,以及用于输出待定点坐标的文本框(12个)、静态标签框和Button按钮;定义文本框控件变量(Value);创建后方交会定点计算函数,函数的输入为三个观测角和三个已知点的坐标,输出为待定点坐标,输出可以用引用参数的方式输出,具体计算步骤;a.根据已知点计算三个内角A、B、C;b.计算Tan(a)、Tan(b)、Tan(g)、Tan(A)、Tan(B)、Tan(C);c.计算Pa、Pb、Pc;d.计算待定点坐标Xp、Yp。创建“计算”Button按钮的Click事件函数,在该事件函数中调用后方交会计算函数,并在相应的文本框中显示计算结果。2.高斯投影正反算计算函数设计编写高斯投影正算与反算的两个函数,并设计简单界面对函数计算的正确性进行测试。 正算公式:是弧度转换为秒的转换单位,是经度L同当前带中央子午线的差值,单位为秒。X 为当前点到赤道的子午线长度。长半轴第一偏心率反算公式:是要求的点到中央子午线的经度差,为底点纬度 下标“f”表示与有关的量 即,y=0时 x 所对应道的子午弧长注意:高斯投影正反算公式比较复杂,编写程序时变量定义一定要十分的清晰实验5 类的创建一、实验目的1. 掌握面向对象编程基本思想2. 掌握VC+.net中创建类3. 掌握建立和使用对象4. 掌握运算符号重载5. 理解类的继承和多态性二、 实验内容1.大地四边形类设计要求:设计一个大地四边形类,注意大地四边形的基本属性,功能上只要求能够设置和返回已知点坐标、8个观测角度、待定点近似坐标计算以及闭合差的计算。提示:大地四边形(如图所示)以AB为基线,具有对角线的四边形,它是建立桥梁控制网常用的形式,一般采用条件平差进行计算,本实验中仅要求采用前方交会的方法计算C和D点的近似坐标。大地四边形 三角形闭合差 极条件闭合差 2.角度类设计要求该类具有度分秒至度的换算、度至度分秒的换算、度与弧度的换算等功能。提示:设置一个角度大小属性,并设定该属性为缺省属性;另设一个状态属性,表示当前设置的角度大小的形式;度分秒、度、弧度间的相互转换的方法;定义运算符号(加、减)方法,使得角度类能够像一种普通的数据类型样的方便使用;用设计好的角度类重新编写后方交会定点程序。实验6 文 件一、实验目的 掌握文件对话框的使用方法。 掌握C+文件操作的一般步骤及实现方法。 了解MFC文件操作的特点及使用方法。二、实验内容1. 编制简单的Cass数据文件进行数据整理的程序。整理后的数据文件中要求无重复点数据,且数据按点号大小的升序进行排序。要求整理后的数据按与原始数据文件同样的格式保存为另外一个文件示例数据“民用园燃气.dat”文件数据格式:总点数点号,编码,X,Y,H例如:要求: a.用SaveFileDialog和OpenFileDialog控件获取文件打开或保存的文件名。b.自定义一个测量点数据结构体,其元素包括:点号,编码,X,Y,Hc.用文本框显示原始数据和整理后的数据d.按编程规范进行编码提示: a. 读数据、保存数据、判断一个点数据是否已经存在、排序、在文本框中显示文件内容等可以分别定义成一个子过程或函数。b.基本流程:打开文件获得总点数根据点数调整数组的大小逐行读取数据,判断该点是否已经存在数组中,若不存在,则把该数据存放在数组中根据删除重复点后的总点数,重新调整数组大小按点号大小的升序排序按原数据格式输出到另外一个文件c.编程技巧实验7 图形程序设计一、实验目的 掌握VC+.net 坐标系和各项设置方法。 掌握GDI绘图方法。 理解交互式图形程序设计二、实验内容1.下列数据为一变形监测点的24期位移监测结果(分别为X,Y,H),编制程序绘制出该点的变形曲线图,每个方向一个位移序列图。变形曲线示意图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.78520.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.设计一个无定向导线简易计算的程序。 要求自己定义文件格式,把下图中数据编写至文件中,然后通过读取文件的形式获取所有数据,计算结果也写入结果文件中。无定向导线计算基本步骤:实验9 平差程序设计基础一、实验目的 巩固过程的定义与调用 巩固类的创建与使用 巩固间接平差模型及平差计算 掌握平差程序设计的基本技巧与步骤二、实验内容水准网平差程序设计。设计一个水准网平差的程序,要求数据从文件中读取,计算部分与界面无关。1.水准网间接平差模型:2.计算示例:3.水准网平差计算一般步骤(1)读取观测数据和已知数据;(2)计算未知点高程近似值;(3)列高差观测值误差方程;(4)根据水准路线长度计算高差观测值的权;(5)组成法方程;(6)解法方程,求得未知点高程改正数及平差后高程值;(7)求高差观测值残差及平差后高差观测值;(8)精度评定;(9)输出平差结果。4.水准网高程近似值计算算法5.输入数据格式示例
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 中学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!