版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include#include#include#include#define MAX 100#define PI 3.1415926/结构体存放 B, L, Hstruct BLH(char namel20;char name220;double B;char name320;double L;char name420;double H;lllllllllllllllllllllllllllllll结构体存放 X,Y,Zstruct XYZ (char namel20; char name220; double X;char name320;double Y;char name420;dou
2、ble Z;lllllllllllllllllllllllllllllllll文件输入 B,L,Hdouble FILEIN(BLH &b,char *fname) (ifstream in(fname,ios:nocreate); /建立文件流,并与输入文件名建立关联 if(!in) coutfname error: file does not exist! endl;cout请手动输入数据 nMendl;return 0;l;2;inb.B;3;inb.L;4;inb.H;in.close();return 1;lllllll
3、lllllllllllllllllllllllllllllllllllllllll文件输入 X,YZdouble FILEIN1(XYZ &b,char *fname) (ifstream in(fname,ios:nocreate); /建立文件流,并与输入文件名建立关联 if(!in) coutfname error: file does not exist! endl;cout请手动输入数据nHendl;return 0;l;2;inb.X;3;inb.Y;4;inb.Z;in.close();return 1;llllll
4、lllllllllllllllllllllllllllllllllllllllllllllllllldouble d_h(double angle)角度化弧度(double a,b;angle=modf(angle,&a);angle=modf(angle*100.0,&b);return (a+b/60.0+angle/36.0)*(PI+3.0E-16)/180.0;llllllllllllllllllllllllllllllllllllllllllllllllllllllllllldouble h_d(double angle)弧度化角度(double a,b,c;angle=modf(
5、angle*180.0/(PI-3.0E-16),&a);angle=modf(angle*60.0,&b);angle=modf(angle*60.0,&c);return a+b*0.01+c*0.0001+angle*0.0001;lllllllllllllllllllllllllllllllllllllllllll键盘输入 B,L,Hjianpan(BLH &a)(cout请输入大地坐标B endl;cina.B;coutiW输入大地坐标L Hendl;cina.L;coutiW输入大地坐标H endl;cina.H;jianpanl(XYZ &a)(coutn请输入空间直角坐标X e
6、ndl;cina.X;coutn请输入空间直角坐标Y endl;cina.Y;coutn请输入空间直角坐标Z endl;cina.Z;llllllllllllllllllllllllllllllllllllllllllllllllllllll 标系double B_X(BLH &a)(double aaMAXMAX;double al,bl,N,El,X,YZ;int kznzm;char outfilename20/fname20;cout请选择:endl;coutHl:文件输入endl;cout,2:键盘输入endl;cinm;if(m=l)(coutniW 输入文件名 Hendl;cin
7、fname;if(FILEIN(a,fname);else(if(jianpan(a);else键盘输入xxz大地坐标系换算到空间直角坐选择数据输入方式cout”输入有误,程序中止,请重新运行Hendl;return false;else if(m=2)jianpan(a);elsecout “输入代码有误,程序中止,请重新运行” endl;return false;if(a.B90)cout“输入B有误,程序中止,请重新运行Hendl;克拉索夫斯基椭球体Hendl;1975年国际椭球体endl;WGS-84 椭球体endl;2000中国大地坐标系Mendl;选择椭球体return false
8、;if(a.L360)cout“输入L有误,程序中止, return false;if(a.H0)cout“输入H有误,程序中止, return false;aa 0 0=6378245.0000000000;aal0=6378140.0000000000;aa20=6378137.0000000000;aa30=6378137.000;cout请选择椭球体endl;coutH0:coutl:coutn2:coutH3:cink;请重新运行” endl;请重新运行Hendl;aa0l=6356863.0187730473;aall=6356755.2881575287;aa2l=6356752
9、.3142;aa3l=6356752.314;屏幕输出结文件输出结if(k!=0&k!=l&k!=2&k!=3)cout“输入代码有误,程序中止,请重新运行”endl;return false;couta.Bendl;al=aak0;bl=aakl;El=(al*al-bl*bl)/(al*al);a.B=d_h(a.B);a.L=d_h(a.L);N=al/sqrt(l-El*sin(a.B)*sin(a.B);X=(N+a.H)*cos(a.B)*cos(a.L);Y=(N+a.H)*cos(a.B)*sin(a.L);Z=(N*(l-El)+a.H)*sin(a.B);coutH转换后的
10、空间直角坐标是:” endl;果coutHX nXendl;coutY Yendl;coutHZ nZendl;cout要保存数据吗? endl;coutl:保存endl;coutH2 不保存endl;cinn;if(n=l)(coutn请输入保存的文件名endl;果cinoutfilename;ofstream out(outfilename); out.precision(lO);if(!out) coutHcan not open save file!Nendl; outH空间直角坐标endl; outX,endl; outXendl; out,Y,endl; outYendl; out
11、Z,endl; outZendl; out.close(); else if(n=2); else(cout输入代码有误,程序中止,请重新运行endl; return false; cout 谢谢您使用龚晓鹏编的程序,所有任务均巳完成,欢迎下次使用,祝生活愉快 endl;IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII空间直角坐标系换算到大地坐标系 double X_B(XYZ &a) double al,bl,N,E1,B,L,H,BO,aaMAXMAX; double tanBMAXl; int i=0,n,k,m;cha
12、r outfilename20zfname20;选择数据输入方式 coutiW选择:endl; coutHl:文件输入endl; cout2:键盘输入endl; cinm; if(m=l) (coutniW 输入文件名 Hendl; cinfname; if(FILEINl(a,fname); else (if(jianpanl(a); else(cout输入有误,程序中止,请重新运行endl; return false; else if(m=2)jianpanl(a);elsecout“输入代码有误,程序中止,请重新运行Hendl; return false;aa 0 0=6378245.0
13、000000000;aal0=6378140.0000000000;aa20=6378137.0000000000;aa30=6378137.000;aa0l=6356863.0187730473;aall=6356755.2881575287;aa2l=6356752.3142;aa3l=6356752.314;cout0.000000000000001);coutiendl;N=al/sqrt(l-El*sin(B)*sin(B);H=sqrt(a.X*a.X+a.Y*a.Y)/cos(B)-N;B=h_d(B);L=h_d(L);if(a.X0&a.Y0)L=180+L;else if(
14、a.X0)L=180+L;else if(a.X0&a.Y0)L=360+L;cout“转换后的大地坐标是:Nendl;屏幕输 出结果coutHB Bendl;coutHL Lendl; coutH NHendl;cout要保存数据吗? endl;coutl:保存endl;cout2 不保存Mendl;cinn;if(n=l)cout“请输入保存的文件名”endl;将结果保存到文件cinoutfilename;ofstream out(outfilename);out.precision(15);if(!out) coutMcan not open save file!Nendl;outH空间直角坐标endl;out,B,endl;outBendl;outL,endl;outLendl;outH,endl;outHendl;out.close();else if(n=2);else(cout输入代码有误,程序中止,请重新运行,endl;return fa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 技术保密合同案例分享
- 肾囊肿去顶减压手术
- 《LC算术运算指令》课件
- 《电视机的整机结构》课件
- 新昌县茶叶种植收购合同样本
- 统编版语文三年级上册第五单元交流平台 公开课一等奖创新教学设计
- 《读不完的大书》公开课一等奖创新教学设计(共两课时)
- 《复习推理与证明》课件
- 胸痹患者的护理措施
- 年产xxx高性能铁氧体一次料项目建议书
- (完整word版)高考英语作文练习纸(标准答题卡)
- 3-7《计量时间和我们的生活》练习(含答案)
- 医学英语医英了immunesystem课件
- 在公司班组建设推进会上的讲话
- 中学中小学心理健康教育特色学校申报表(含申报材料)1
- 新生儿入院护理工作流程图
- 三维可视化桥梁安全监测解决方案
- 体育赛事活动应急工作预案
- 新形势下强制隔离戒毒所管理工作面临的风险原因及对策思
- 课堂管理的方法与技巧经典.ppt课件
- 关于电缆屏蔽一点接地与两点接地的分析
评论
0/150
提交评论