欢迎来到天天文库
浏览记录
ID:55514491
大小:78.00 KB
页数:9页
时间:2020-05-15
《实验三 高投影正算.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实验三高斯投影正算地信050212赵静一.实验目的1、高斯-克吕格投影正算的编程计算。2、熟悉C++编程练习。二.实验内容设计一个高斯投影正算的VC程序,要求有单点和多点文件的输入,输出结果包含列表、文件及绘图输出,并且要求计算结果正确。三.实验步骤1、利用VC建立工程(MFCappwizard(exe)):Test_Gause2、设计对话框窗体布局。如下图所示:3、在classwizard中增加变量及消息映射函数。1、设计选择椭球函数/*********************************
2、***********功能:选择计算所要用的椭球和投影带共三个椭球,两种投影带********************************************/voidCTest_GauseDlg::choose(){this->UpdateData();intm_index;intm_daiindex;m_index=((CComboBox*)GetDlgItem(IDC_COMBO_TUOQIU))->GetCurSel();m_daiindex=((CComboBox*)GetDlgIte
3、m(IDC_COMBO_TUOYINGDAI))->GetCurSel();flag_daicha=3*m_daiindex+3;switch(m_index){case0://克氏a0=111134.8610828;a2=-16036.48022;a4=16.82805;a6=-2.197E-02;a8=3E-05;c=6399698.901782711;a=6378245;square_e1=6.738525414683E-03;square_e=6.693421622966E-03;q0=1570
4、46064.12328E-15;q2=25258869461.858E-12;q4=-14919317.6572E-12;q6=120717.4265E-12;q8=-1075.1509E-12;break;case1://1975a0=111133.0046793;a2=-16038.52818;a4=16.83263;a6=-2.198E-02;a8=3E-05;c=6399596.6519880105;a=6378140;square_e1=6.739501819473E-03;square_e=
5、6.694384999588E-03;q0=157048687.47416E-15;q2=2526252791.9786E-12;q4=-14923644.4356E-12;q6=120769.9608E-12;q8=-1075.7700E-12;break;case2://wgsa0=111132.9525494;a2=-16038.50840;a4=16.83260;a6=-2.198E-02;a8=3E-05;c=6399593.6258;a=6378137;square_e1=6.7394967
6、4227E-03;square_e=6.6943799013E-03;q0=157048761.142065E-15;q2=2526250855.8867E-12;q4=-14923621.5362E-12;q6=120769.6828E-12;q8=-1075.7667E-12;break;default:break;}}1、正算公式设计/********************************************功能:进行高斯投影正算并输出结果**********************
7、**********************/voidCTest_GauseDlg::OnButtonZcount(){//TODO:Addyourcontrolnotificationhandlercodeherethis->choose();doubleangle_to_radian=pi/180;doublet,k,V,N,p,dL,B,L,L0,X;B=(double)m_ZB1+(double)m_ZB2/60+m_ZB3/3600;L=(double)m_ZL1+(double)m_ZL2/
8、60+m_ZL3/3600;L0=(double)m_L1+(double)m_L2/60+m_L3/3600;if(L0>=0&&L0<=180&&B>=0&&B<=90&&L>=L0-(double)flag_daicha/2&&L<=L0+(double)flag_daicha/2){t=tan(B*angle_to_radian);k=square_e1*cos(B*angle_to_radian)*cos(B*angle_to_r
此文档下载收益归作者所有