资源描述:
《《测绘程序设计(vcnet)》上机实验报告-实验二报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、《测绘程序设计(VC.net)》上机实验报告(VisualC++.Net)班级:测绘1001学号:0405100111姓名:李佳霖序号:二零一三年三月目录实验2控制结构程序设计1总结13实验2控制结构程序设计一、实验目的掌握VC卄.net语言的基本语法;理解顺序结构、选择结构和循坏结构程序设计的特点及应用掌握对基本对话框的mfc应用程序设计方法掌握一些简单算法二、实验内容1、编写一个方位角计算程序2、设计同一个参考椭球下的三维地心坐标与大地坐标系转换的程序3、编写一个后方交会计算程序设计思路:简单叙述该程序设计的基本步骤,对比较
2、复杂的要求列出算法的详细描述以及流程图。1、建立一个基于对话框的mfc应用程序,并在对话框屮布设相应的空间如图1所示;然后为各个控件的属性做相应的修改,并为其屮的六个编辑框控件添加变量,注意变量的类型和变暈名;最后为对话框屮的三个按钮控件定义函数并完善代码即可其屮calculate控件的函数算法是先由输入的两点的坐标值计算arctg(dy/dx)然后根据dy,dx与0的大小关系判断两点所构成向量所在的象限并由此来计算方位角的值。Clear控件的函数算法就是将六个编辑框控件添加的变暈置零。2、建立一个基于对话框的mfc应用程序,并
3、在对话框屮布设相应的控件如图2所示;然后为各个控件的属性做相应的修改,并为其屮的六个编辑框控件添加变暈,注意变暈的类型和变量名,其屮变量类型均为double型,变量名应尽量与控件前而的静态文本保持统一;最后为对话框屮的四个按钮控件定义函数并完善代码即可其屮BLH-XYZ按钮控件的函数算法为:先将所输入的BLH的度分秒的形式转换为度的形式,再利用儿个基本常量和BLH的值计算e、N的值,最后判断输入的B、L的值是否符合要求,若符合要求可由°、N、B、L和H的值利用公式求出XYZ的值,若不符合要求则弹出提示对话框。XYZ-BLH按钮控
4、件的函数算法为:先利用儿个基本常量计算e值,由公式可知X若为零则无意义,所以判断X的值是否为零,若为零则弹出提示对话框;若不为零则进行下边的操作,利用dowhile循环语句迭代计算BLH的值,其中因为L的取值范围为-180^180,而atan函数的值域为-90~90,则应根据XY的值与零的大小关系分不同的选择情况计算L的值,最后将算的的BL的值由弧度的形式转换为度分秒的形式。Clear控件的函数算法就是将六个编辑框控件添加的变虽置零。3、建立一个基于对话框的mfc应用程序,并在对话框屮布设相应的控件如图3所示;然后为各个控件的属
5、性做相应的修改,并为其中的11个编辑框控件添加变量,注意变量的类型和变量名,其屮变量类型均为double型,变量名应尽量与控件前而的静态文本保持统一;最后为对话框屮的3个按钮控件定义函数并完善代码即可其屮calculate按钮控件的函数算法为:先利用三个已知点的坐标计算三点构成三角形的三边的长度,再利用三边的长度根据余弦定理计算三角形三个内角的值A、B、C,然后将输入的三个观测量alfa,beita,gama由度分秒的形式转换为弧度的形式以进行三角函数的运算,最后进行选择:(1)根据后方交会的方法,如果三个观测值的和不为360,
6、则弹岀提示对话框;(2)如果未知点在危险圆的附近则弹出提示对话框;(3)若满足了条件则可利用公式计算出未知点的平面坐标Clear控件的函数算法就是将六个编辑框控件添加的变虽置零。置.1、界面设计:设计时的界面。如杲控件得属性比较复杂,则以表格的形式列出所用控件的主要属性设參lySecondEx22
7、X
8、[BLHfXYZXYZ->BLHCLEAREXIT图1品lySecondEz3A点坐标xa-B点坐标xb-ya・yb-C点坐标xc-yc-观测值alfa-未知点坐标YP-xp-beita-gama-主要代码:列出程序的代码,按文件
9、依次列出。注意代码的书写格式和注释1//MySecondExlDlg.cpp:实现文件^include"stdafx.h〃^include"MySecondExl.h"^include"MySecondExlDlg.h"^include
10、15926;//定义实型常量pi〃定义变量dx,dy,z,为dy/dx的商doubledx,dy,z;dx=x2-xl;dy=y2-yl;z=dy/dx;〃定义变量a,为两点所构成直线的彖限角doublea;a=atan(fabs©));//用一个if语句来分别