测绘程序设计实验三Word文档格式.docx
- 文档编号:15974434
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:16
- 大小:1.15MB
测绘程序设计实验三Word文档格式.docx
《测绘程序设计实验三Word文档格式.docx》由会员分享,可在线阅读,更多相关《测绘程序设计实验三Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
掌握指针和动态数组
掌握函数的定义、引用及应用方法。
实验内容1、编写一个球任意多边形的面积的程序。
提示:
通过界面输入数据,并把数据保存在一个二维数组或一个一维的自定义结构体类型的数组中,然后在进行计算。
要求计算部分写成函数形式,式计算程序与界面无关。
例如:
P=1/2(x1+x2)(y2-y1)+1/2(x2+x3)(y3-y2)+1/2(x3+x4)(y4-y3)+1/2(x4+x1)(y1-y4)
2、由三角形三个边长求内角函数;
5、交会定点计算函数设计
把前面学过的前方交会、侧边交会、后方交会程序写成函数的形式,然后再通过主程序调用
实验步骤
实验3.1
如下图所示,新建一个基于对话框的MFC文件,并根据要求设置编辑框的属性,以满足实验的要求
根据要求添加相应的函数代码
voidCshiyan31Dlg:
:
OnBnClickedButton1()
{
//计算控件程序代码
UpdateData(TRUE);
intiLine;
intiPtCount;
CString*strTmp=NULL;
intn;
CString*pstrLine=SplitString(strInput,13,iLine);
if(iLine<
4)//多边形最少三个边,否则不能构成多边形
{
MessageBox(_T("
数据缺省!
"
));
return;
}
iPtCount=_ttoi(pstrLine[0]);
//第一行为多边形边数
structPoint//建立储存点的结构体
double*dPx;
double*dPy;
}dPt;
dPt.dPx=newdouble[iPtCount];
dPt.dPy=newdouble[iPtCount];
if((iLine<
iPtCount+1)||(iPtCount<
3))//判断错误情况:
数据与边数不符与不构成多边形
输入有误!
else
for(inti=0;
i<
iPtCount;
i++)
{
strTmp=SplitString(pstrLine[i+1],44,n);
dPt.dPx[i]=_tstof(strTmp[0]);
dPt.dPy[i]=_tstof(strTmp[1]);
if(strTmp!
=NULL)//释放内存
{
delete[]strTmp;
strTmp=NULL;
}
}
if(strTmp!
delete[]strTmp;
strTmp=NULL;
dArea=fabs(ComptArea(dPt.dPx,dPt.dPy,iPtCount));
if(pstrLine!
delete[]pstrLine;
pstrLine=NULL;
UpdateData(FALSE);
}
OnBnClickedOk()
//初始化
strInput="
输入坐标"
;
dArea=0;
下面是运行结果:
实验3.2
根据实验要求新建一个基于对话框的MFC文件,并根据要求添加相应需要的编辑框和静态框,已经命令按钮。
并根据需要改变各个命令按钮的属性。
双击命令按钮进入函数编辑区如下所示:
在函数编辑区添加相应的函数代码
voidCshiyan32Dlg:
//TODO:
在此添加控件通知处理程序代码
UpdateData(TRUE);
doubleA,B,C,M,N,X;
M=cos(A);
N=cos(B);
X=cos(C);
M=(b*b+c*c-a*a)/(2*b*c);
N=(a*a+c*c-b*b)/(2*a*c);
X=(a*a+b*b-c*c)/(2*a*b);
UpdateData(FALSE);
a=b=c=0;
//对变量初始化
//OnOK();
OnBnClickedCancel()
//OnCancel();
运行结果
实验3.3
根据需要新建一个基于对话框的MFC文件并添加所需要的静态框和编辑框以及命令按钮如下所示:
双击命令按钮进入函数编辑区,在需要的位置添加相应的函数代码:
运行结果:
实验3.4
根据实验要求新建一个基于对话框的MFC文件,并添加相应的静态框和编辑框,按照需要改变各个编辑框的属性这些在之前的事眼中都已经用到,所以这里就不再一一解释:
按照需要添加相应的函数代码:
下面是运行结果
实验3.5
按照要求建立一个基于对话框的MFC文件
如下图添加三个button按钮分别命名为“前方交会”“侧方交会”“后方交会”:
并分别在源文件中添加三个DIG,分别命名为“qiangfangjiaohui”“cefangjiaohui”“houfangjiaohui”
在头文件中分别添加三个源文件如图所示:
并在相应的button添加如下所示的代码:
运行结果如下:
表示调用关系已经建立成功
在前方交会对应的Dialog下的函数框中添加相应的静态框和编辑框以及命令按钮,并在函数中添加相应的函数代码,如下所示
前方交会的代码
前方交会运行结果
后方交会的代码
后方交会运行成果
侧方交会的代码
侧方交会运行成果
实验结果本次试验比之前所做的实验的实验量都大好多,而且难度也又增加,试验时间缩短了,但是这个更加考验我们的能力,虽然这个让我们在实验的过程中觉得非常的紧张,但是真的试验结束后还是觉得收获颇丰,在这次的实验中,中间三个实验都比较好做,而第一个实验因为要求计算部分写成函数形式式计算程序与界面无关。
所以难度大大增加,而最后一个实验其实就是一个主干加上各个实验校分块你的分支,但是由于在运行检验过程中错误不显示。
所以再找错的时候就增加了难度与工作量。
但是幸好还是做完了,这其中有些是自己的独立完成的,还有的是通过同学的帮助,在实验过程还发现了一个很严重的问题,之前学过的测绘公式居然都忘记了,所以还要到书上面找,给我们敲响了警钟,以后一定要认真学习并谨记在心。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 测绘 程序设计 实验
![提示](https://static.bdocx.com/images/bang_tan.gif)