测量程序设计实习报告
测量程序设计实习报告
姓名: 班级: 学号:
教师评语:
日期:二零一四年十二月
实验名称:使用C#开发环境建立测量程序框架
一、实验的目的与任务:
(1) 学会用C#窗体程序开发环境建立应用程序框架方法 (2) 学会使用常见的Windows 控件
(3) 根据自身需要设计一个测量程序界面
二、实验的过程与步骤:
1. 创建窗体项目
打开“新建项目”对话框,选左边“已安装模板”栏的“其他语言\Visual C#”项,再选右边“模板”栏的“Windows 应用程序”模板。选择磁盘卷和父目录位置后,输入项目名称“测量程序”按“确定”按钮关闭对话框。 2. 修改窗体属性
窗体的属性有很多,其中常用的有:
布局:大小Size ——缺省为300*300像素,可以通过修改此属性,或直接拖动窗体的边框来改变窗体的尺寸。运行时用户也可以自己改变窗体大小。
设计:是程序设计中窗口的引用名称,名称(Name )缺省为Form1,可以改成自己喜欢的名称,如CLCX ,回车确认后,系统会自动修改所有相关内容中的该标识符。
外观:文本Text ——对应于窗体的标题,缺省也为Form1,可以改为自己喜欢的标题,如“导线简易平差”。
单击窗口界面,再点击菜单工具栏中“属性”工具,调出属性窗口,此时属性窗口显示的内容便是窗口的属性,找到“Name ”栏,将其值改为“CLCX ”;再找到“Text ”栏,将其值改为“导线简易平差”。 将鼠标箭头放置于窗口边缘,拖动窗口以调整窗口大小,将窗口大小调整为合适大小。
3. 添加按钮和控件
可以在窗口中添加标准控件,以实现可视化的目的, C#中常用的标准控件有: (1)按钮(Button )
是用户以交互方式控制程序运行的控件之一。 主要属性: 1)Text 属性
设置显示在按钮表面上的文字,用于说明该按钮的作用。 2)Enabled 属性 设置按钮是否可用; (2)Label 控件
Label 控件主要用于通过其Text 属性显示文本信息。 主要属性: 1)Text 属性
标签中显示的文本内容 2)Font
显示文本的字体、字号和字形 (3)TextBox 控件 程序运行期间,可以让用户通过键盘、鼠标等在文本框中直接输入并修改文字信息,还可以在文本框中使用剪切、复制、粘贴等操作。主要属性有: 1)Text 属性
输入到文本框中的字符。 2)PasswordChar 属性
用来替换在单行文本框中输入文本的密码字符。 3)Enter 方法
成为活动控件时发生。 4)AppendText()方法
在文本框当前文本的末尾追加新的文本。 点击“视图”下“工具箱”,打开工具箱,点击“公共控件”,用鼠标拖动工具栏里的Label 控件到窗口中的合适位置,将其Text 属性改为“符合导线平差”,用同样的方法拖动另外一个Label 控件到窗口中,或直接复制窗口中已有的控件,并赋予相应的属性值。
与添加Label 控件的方法相同,在窗口中添加9个TextBox 控件,和两个命令按钮,将两个命令行按钮的Text 属性分别改为“添加已知点”和“开始计算”。 使用dataGridView 控件实现可视化输入和输出数据,它是一个表格控件,使用该控件可以绑定相应的数据源,显示、修改、操作所连接的数据,也可以往里面输入数据,在测量程序中要输入部分已知数据,可以使用该控件实现,像添加普通控件一样,在“公共控件”工具栏里找到dataGridView 控件,拖动该控件到窗口中合适位置。
三、程序运行效果
该窗口是一个简易的附合导线平差功能实现的窗口界面,界面中“未知点数”为所要求的未知点坐标的个数,“已知点输入”为附合导线平差时的已知坐标即定向坐标,“添加已知点”按钮其作用是点击添加上面输入的已知点数据到表格控件中,“开始计算”按钮其作用是点击开始进行计算。界面内容如下图所示:
四、本实验心得体会
1. 通过本次实验了解了.NET 框架的内容,利用.net 框架进行windows 程序开发的优势,了解了 VisualStudio2010集成开发环境的使用方法、软件界面、菜单的功能,利用VisualStudio2010进行程序开发的大致过程。
2. 了解了利用面向对象思想进行程序设计的和方法。知道了C#开发windows 程序中的属性、方法、事件的含义。
3. 了解了利用C#开发窗口应用程序和过程和方法,以及在开发窗体应用程序中使用到的各种公共控件和这些控件常用到的属性、方法、和事件。
实验名称:导线计算程序设计及粗差探测
一、实验的目的与任务:
(1) 掌握方位角计算的程序设计方法
(2) 掌握符合导线、闭合导线、支导线计算的程序设计方法 (3) 理解粗差探测的程序设计方法
二、实验的设计与开发步骤:
导线测量是控制测量中常用的方法之一,符合导线是导线布设的一种形式。在导线外业测量完成后,需要进行近似平差,以求得每个导线点的坐标值。导线平差计算数据多,程序繁琐,采用手工计算不仅工作量大,且很容易出错, Visual C#是目前进行windows 程序开发广泛应用的工具之一,它功能强大,并且具有可视性和面向对象程序设计的优点,利用Visual C#开发导线平差应用程序,界面友好,用户使用方便。 1. 符合导线平差步骤
(1)计算角度闭合差,判断误差是否超限,若在允许范围则进行调整(包括计算角度改正数、改正数分配和改正后的角度); (2)计算导线边方位角; (3)计算坐标增量;
(4)计算导线全长闭合差,判断闭合差是否超限,若在允许范围内则进行调整(包括计算坐标增量改正值,改正数分配和改正后的坐标增量); (5)计算导线点坐标。 2. 导线平差计算公式 f β=∑β左-n *180 -(αn -α0) 角度闭合差:
f =β-n *180-(α0-αn ) ∑β右
αi =αi -1+βi ' 左-180 方位角的推算: '
或α=α-β+180i i -1i 右
∆x i =l i ⋅cos αi
坐标增量:
∆y i =l i ⋅sin αi
f x =∑∆x -(x n -x 1) 坐标闭合差:
f y =∑∆y -(y n -y 1)
V ix =-f x /[l ]*l i 各边的坐标增量改正数:
V iy =-f y /[l ]*l i
f x +f y f =导线的精度: l l
3. 程序界面的设计
根据平差过程中使用到的已知数据和平差的输出数据,设计相应的程序界面,界面的能满足数据的输入、输入数据的显示、计算数据的显示等要求,根据上述要求设计界面如下:
22
界面包括一个9个输入框、12个标签、2个命令按钮、1个表格控件。 界面中各输入框、按钮功能: “未知点数”:用来输入待求坐标的个数。 “已知点输入”:用来输入已知点数据。
“添加已知点”按钮:用来将已知点数据加入到右边表格中。 “开始计算”按钮:点击开始进行平差计算。 4. 导线算法流程图
相对误差超限
5. 代码编辑
根据流程图实现附合导线平差的算法。 代码见附录1.
三、程序运行及数据测试效果
测试数据
已知点坐标:A (1318.8830,1009.9262)B (920.7200,1306.9706)
C(967.7081,3420.9362) D(1385.6557,3715.5052)
从图中提取的坐标:1. (1024.5886,1883.7317)2. (908.3546,2425.8376) 3. (1234.7989,29333.2884) 计算结果如图所示:
四、本实验心得体会
1. 通过本次实验巩固了导线平差的基本方法了解了导线计算过程中简单的粗差探测方法。
2. 通过用编程实现符合导线平差的过程使我掌握了用计算机解决实际问题的一般过程和方法,提高了我的代码编辑能力,和用计算机解决实际问题的能力。
实验名称:测量数据库的建立
一、实验的目的与任务:
(1) 掌握利用Access 或SQLserver 建立测量数据库的基本方法 (2) 掌握利用C#编程连接数据库,并进行数据操作的方法
二、实验的设计与开发步骤:
1. 设计数据库管理程序界面并实现添加、查询、修改、删除等功能
(1)创建窗体项目
打开“新建项目”对话框,选左边“已安装模板”栏的“其他语言\Visual C#”项,再选右边“模板”栏的“Windows 应用程序”模板。选择磁盘卷和父目录位置后,输入项目名称“测量程序数据库”按“确定”按钮关闭对话框。 (2)修改窗口属性
修改窗口的Text 属性,将窗口的Text 属性值改为“观测数据管理” (3)添加控件,修改控件相应属性 往窗口中添加相应控件,并修改控件相应属性,在此窗体应用程序中用到的控件有 Label 控件、命名按钮、文本框和表格控件。
设计界面如下:
功能要求:点击“添加/修改”将数据写入CLDA TA 数据库,GCZ 表中
功能要求:实现通过测站点,前视点,或后视点查询观测值 2. 建立数据库,并向数据库添加数据
本次实验使用office 办公套件Access2007建立数据库,并利用ADO 数据库模型建立与数据库的连接,实现对数据库的操作。 启动Access2007新建数据库,命名为“CLDATA ”,在数据库中新建表,表名称为“GCZ ”,
字段有“CZ ”(测站),“QS ”(前视),“HS ”(后视),“SPJ ”(水平角),“SZJ ”(竖直角),“HD ”(平距),“SD ”(斜距),“REM ”(备注)。
建立的数据库和数据表如下图所示:
3. 添加代码
在窗体中添加代码,实现上述功能。 代码见附录2.
三、程序运行及数据测试效果
测站数据添加之前:
执行修改添加
添加数据之后:
四、本实验心得体会
1. 通过本次实验了解了数据库管理数据的优势,利用Access 建立数据库的基本方法,了解了数据库的基本原理。
2. 掌握了ADO 数据库模型编程的基本概念和方法,实现了利用ADO 连接建立的数据库并进行简单的修改和查询。
3. 掌握了基于数据库程序设计的基本方法和步骤。