测量程序设计报告.docx
- 文档编号:27905151
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:15
- 大小:27.61KB
测量程序设计报告.docx
《测量程序设计报告.docx》由会员分享,可在线阅读,更多相关《测量程序设计报告.docx(15页珍藏版)》请在冰豆网上搜索。
测量程序设计报告
LastupdatedontheafternoonofJanuary3,2021
测量程序设计报告
成绩
环境与测绘工程学院
课程论文
学年学期:
2016-2017
(一)
课程名称:
测量程序设计
论文题目:
附合导线平差求解
姓名:
胡慧茹
学号:
任课教师:
白洪伟
一实训目的.....................................3
二实训任务.....................................3
三实训环境.....................................4
硬件环境......................................................4
软件环境.......................................................4
四项目设计与分析...............................5
软件基本界面...................................................6
附合导线平差求解...............................................7
高差求解......................................................11
计算方位角...................................................12
实训内容....................................................12
实现步骤设计...............................................12
角度转换......................................................13
实训内容....................................................13
实现步骤设计................................................13
计算坐标......................................................14
五调用程序....................................15
1.导线...........................................................15
2.将度分秒转换为度...............................................16
3.将度分秒转换为秒数.............................................17
4.将弧度转化为度分秒.............................................17
5.将角度转换为弧度............................................17
6.给定俩坐标,坐标正y算方位角,返回的是以弧度为单位的角度........18
六实验心得.................................................18
一实训目的
(1)掌握C#窗体创建及其常用控件的选用和编程。
进一步提高编程能力,掌握对C#方法的调用,同时学会并运用MicrosoftVisualStudio2010软件编辑C#语言程序。
(2)实训室由学校组织,利用课堂有限的时间掌握专业知识与运用,结合课下空闲时间巩固加强。
学生在实训期间,以个人为单位完成项目,通过自己的不断摸索,实训可以学到课堂上学不到的知识,可以将学到的知识灵活运用起来。
(3)在实训的过程中,可以让学生树立明确的学习态度,拥有良好的职业素养,锻炼扎实的职业技能,塑造坚定的职业人生,也为选择考研深造的同学提供锻炼的机会。
(4)C#是当今社会中发展速度迅猛的一种语言,所以企业公司对于人员的要求也不断提高,与测绘相关的职业也需要具备编程知识的人员,通过实训激发自身潜力,提高自身修养,掌握编程语言,养成良好的编程习惯,为以后的求职生涯添上一块“敲门砖”。
(5)利用MicrosoftVisualStudio2010软件设计窗体应用程序并完成“附合导线平差”程序设计,其中包括登录界面、主界面、角弧转换界面和距离及方位角计算等界面。
二实训任务
(1)软件基本界面
软件的基本界面包登录界面和主界面,主界面里面为附合导线平差求解,在菜单栏的小工具中包高差求解、角度转换和坐标求解。
(2)附合导线平差求解
在一条双定向附合导线中,已知端点四点坐标,若干左角和边长,求其中各点坐标。
(3)高差求解
用全站仪在一点观测了另一点斜边和垂直角,求两点的高差。
(4)计算方位角
方位角的取值为0-360度。
(5)角度转换
将输入的角度转换为弧度或弧度转换为角度。
(6)计算坐标
已知两点中一点的坐标、距离及方位角,求另一点的坐标。
三实训环境
硬件环境
硬件环境是计算机及其外围设备组成的计算机物理系统,即硬件设施,是指由传播活动所需要的那些物质条件、有形条件之和构筑而成的环境。
硬件环境主要是由计算机的硬件组成的,而计算机硬件是指计算机系统中由电子、机械和光电元件等组成的各种物理装置的总称。
这些物理装置系统按系统结构的要求构成一个有机整体为计算机软件运行提供物质基础。
简而言之,计算机硬件的功能是输入并存储程序和数据,以及执行程序把数据加工成可以利用的形式。
从外观上来看,微机由主机箱和外部设备组成。
主机箱内主要包CPU、内存、主板、硬盘驱动器、光盘驱动器、各种扩展卡、连接线、电源;外部设备包鼠标、键盘、显示器、音箱等,这些设备通过接口和连接线与主机相连。
这些都是构成硬件的主要部分。
对于C#面向对象的软件来说,所需的硬件环境,要求其实不是很高,安装VisualStudio2010时的所需的必备条件如表1:
表1安装VisualStudio2010所需的必备条件
硬件
描述
处理器
600MHz处理器,建议使用1GHz处理器
RM
192MB,建议使用256MB内存
可用硬盘空间
如果不安装MSDH,系统驱动器上需要1GB的可用空间,安装驱动起上需要2GB的可用空间;如果安装MSDHL,则系统驱动上需要1GB的可用空间,安装完整MSDH的安装驱动器上需要的可用空间,默认安装MSDH的安装驱动器上需要的可用空间。
CD-ROM或DVD-ROM驱动器
必须使用
显示器
800×600,256色,建议使用1024×768,增强色16位
鼠标
微软鼠标或兼容的指针设备
操作系统及所需补丁
Windows2000ServicePack4、WindowsXPServicePack2、WindowsServer2003、ServicePack1或更高版本
软件环境
软件环境是指由传播活动所需要的那些非物质条件、无形条件之和构筑而成的环境。
只要指软件的运行环境以软件运行所需要的周边软件等等,除此之外,还包括目的软件之外的应用层软件,在涉及软件交互的时候,这些应用软件往往影响很大。
实训中,我们使用VS集成环境来实现对于C#程序的运行。
VisualStudio是微软公司推出的开发环境,是目前最流行的Windows平台应用程序开发环境。
VisualStudio2010版本于2010年4月12日上市,其集成开发环境(IDE)的界面被重新设计和组织,变得更加简单和明了。
VisualStudio2010同时带来了、MicrosoftVisualStudio2010CTP,并且支持开发面向windows7的应用程序。
VisualStudio是开发.NET应用程序的一套完整的开发工具集,集设计、编辑、运行和调试等多种功能于一体的集成开发环境(IDE)。
VisualStudio支持四种内置的开发语言:
VisualBasic、VisualC++、VisualC#和VisualJ#,他们使用相同的集成开发环境,因而有助于创建混合语言解决方案。
使用VisualStudio可以高效的生成各种应用程序、XMLWebServices,桌面应用程序和移动应用程序。
使用VisualStudio集成开发环境可以快捷高效的开发Windows窗体应用程序。
VisualStudio是我们学习C#必不可少的应用环境,实训时,我们对于VisualStudio的应用更加熟练了,也对VisualStudio有了各方面的了解。
四项目设计与分析
软件基本界面
图1程序设计
本程序名为“程序设计”,登录界面如图1,用户名为“”,密码为“胡慧茹”。
双击“确定”,为了实现账户名密码登录输入一下程序:
privatevoidbutton1_Click(objectsender,Eventrgse)
{
string=;
stringb=;
if(==""&&b=="胡慧茹")
{
();
附合导线平差求解frm2=new附合导线平差求解();
();
}
具体步骤:
文件,新建项目,windows应用窗体程序,添加两个label控件,两个textbox控件,两个button,右键属性修改控件的name和text的名称。
主界面如图2,主界面是附合导线平差求解,菜单栏中包“文件(打开、另存为)”、“小工具(角度转换、高差求解、计算坐标和计算方位角)”和“帮助(示意图)”。
图2主界面示意图
附合导线平差求解
新建windows窗体命名为附和导线平差,添加五个label控件,十一个textbox控件,三个button控件,一个pictureBox控件,一个openFileDialog,一个saveFileDialog右键属性修改控件的name和text的名称。
图3附合导线示意图
图4附合导线平差求解
在菜单栏中选择“文件”“打开”,导入文件夹中“附合导线实例数据”,点击“平差.txt”,就得出如图4的结果,点击“另存为”,可以将结果以“.txt”格式保存,命名为“附合导线输出数据实例”。
新建一个Windows应用程序命名为“附合导线平差求解”,并设计窗口,双击“平差”,编写如下代码:
privatevoidbutton1_Click(objectsender,EventArgse)
{
doubleMx=;
doubleMy=;
doubleAx=;
doubleAy=;
doubleNx=;
doubleNy=;
doubleBx=;
doubleBy=;
位角(Mx,My,Ax,Ay);
位角(Bx,By,Nx,Ny);
List
List
List
List
double坐标增量X和=0;
double坐标增量Y和=0;
double坐标增量X绝对值和=0;
double坐标增量Y绝对值和=0;
double水平距离和=0;
double水平距离平方和=0;
doubleα=α0;
EG(sd1);
水平距离平方集合.Add(S*S);
水平距离平方和+=S*S;
doubledx,dy;
α=导线.坐标(0,0,β,S,α,outdx,outdy);
方位角集合.Add(α);
坐标增量X集合.Add(dx);
坐标增量Y集合.Add(dy);
坐标增量X和+=dx;
坐标增量Y和+=dy;
坐标增量X绝对值和+=(dx);
坐标增量Y绝对值和+=(dy);
pj+=2;spj+=2;
EG(LJ);
位角(方位角集合[方位角集合.Count-1],βn);
ount+1);
lear();
坐标增量Y集合.Clear();
坐标增量X和=0;
坐标增量Y和=0;
坐标增量X绝对值和=0;
坐标增量Y绝对值和=0;
for(intj=0;j<方位角集合.Count;j++)
{
方位角集合[j]+=方位角改正数*(j+1);
dd(dx);
坐标增量Y集合.Add(dy);
坐标增量X和+=dx;
坐标增量Y和+=dy;
坐标增量X绝对值和+=(dx);
坐标增量Y绝对值和+=(dy);
}
ount;j++)
{
X+=坐标增量X集合[j]+X坐标单位长度改正数*(坐标增量X集合[j]);
坐标(X));
Y+=坐标增量Y集合[j]+Y坐标单位长度改正数*(坐标增量Y集合[j]);
坐标(Y));
}
stringJG=坐标x[0]+""+坐标y[0]+""+坐标x[1]+""+坐标y[1]+""+坐标x[2]+""+坐标y[2];
=JG;
}
高差求解
新建一个Windows应用程序,命令为“高差求解”,按图5布置控件。
双击“确定”,输入一下程序。
图5高差求解示意图
编写如下代码:
privatevoidbutton1_Click(objectsender,EventArgse)
{
doubleD=;
doublea=;
doublei=;
doublev=;
doubleh=D*(a)+*D/*D/*(a)*(a)/+i-v;
=();
}
计算方位角
实训内容
方位角的取值为0-360度。
实现步骤设计
新建一个Windows应用程序,命名为“计算方位角”,按照如8布置控件。
依次双击两个“确定”,输入以下程序:
图6计算方位角
编写如下代码:
privatevoidbutton1_Click(objectsender,EventArgse)
{
double后视边方位角=;
double左角=;
double方位角=后视边方位角+左角+;
{
if(方位角>=方位角-=;
if(方位角<方位角+=;
}
=(方位角);
}
角度转换
实训内容
将输入的角度转换为弧度或弧度转换为角度。
实现步骤设计
新建一个Windows应用程序,命名为“角度转换”,按照如8布置控件。
依次双击两个“确定”,输入以下程序:
图7角度转换
编写如下代码:
privatevoidbutton1_Click(objectsender,EventArgse)
{
oString();线
class导线
{
度分秒转换为度
publicclasscejiao_jiao
{
publicdoublecj_j(doublejiao)
{
jiao=(jiao);
intdu=(int)(jiao));
jiao=(jiao-du)*100;
intfen=(int)(jiao));
jiao=(jiao-fen)*100;
intmiao=(int)(jiao));
jiao=du+fen/60+miao/3600;
returnjiao;
}
}
3.将度分秒转换为秒数
publicclasscejiao_jiaomiao
{
publicdoublecj_j(doublejiao)
{
jiao=(jiao);
intdu=(int)(jiao));
jiao=(jiao-du)*100;
intfen=(int)(jiao));
jiao=(jiao-fen)*100;
intmiao=(int)(jiao));
jiao=du*3600+fen*60+miao;
returnjiao;
}
}
4.将弧度转化为度分秒
publicclassh_j
{
publicdoubleHUDU_to_JIAODU(doubledd)
{
doublea=dd;
a=a*
intd=(int)将角度转换为弧度
publicclassj_h
{
publicdoubleJIAO_HUDU(doublejiao)
{
intd=(int)(jiao));
jiao=jiao-d;
intf=(int)(jiao*);
jiao=jiao*100-f;
doublem=jiao*;
jiao=d*+f*+m;
doublehudu=jiao/
returnhudu;
}
}
6.给定俩坐标,坐标正y算方位角,返回的是以弧度为单位的角度
publicclassfwj
{
publicdoublejisuan(doublex1,doubley1,doublex2,doubley2)
{
doublecx,cy,cc;
cx=x2-x1;
cy=y2-y1;
if(cx==0&&cy==0)
return-1;
else
{
if(cx==0)
{
if(cy>0)
cc=;
else
cc=*;
}
else
cc=(cy,cx);
if(cy<0&&cx!
=0)
cc=cc+;
returncc;
}
}
}
六实验心得
1、学习编程语言一方面需掌握一下处理基本事件的方法,如如何获得输入的字符串等;另一方面应用的软件有清楚的认识,并且还要对编写程序所需的方法和事件要掌握牢固。
2、课程设计是培养我们学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对我们的实际工作能力的具体训练和考察过程。
通过附合导线平差程序设计实训,使我们更加深入的理解课本中的知识,同时加强了我们个人的实践操作能力,并且培养了我们独立思考能力和程序逻辑创造能力。
3、应该及时掌握课本中的知识点,在课下多编写程序,将知识与实践结合起来。
遇到不懂或者难以解决的问题时,及时与老师和同学交流。
4、在课外时间里要阅读一些知识,多做一些项目,不能只依靠书本知识,书本知识是远远不够的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 测量 程序设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)