空间直角坐标系与大地坐标系转换程序.docx

空间直角坐标系与大地坐标系转换程序.docx

ID:58651258

大小:25.00 KB

页数:5页

时间:2020-10-16

空间直角坐标系与大地坐标系转换程序.docx_第1页
空间直角坐标系与大地坐标系转换程序.docx_第2页
空间直角坐标系与大地坐标系转换程序.docx_第3页
空间直角坐标系与大地坐标系转换程序.docx_第4页
空间直角坐标系与大地坐标系转换程序.docx_第5页
资源描述:

《空间直角坐标系与大地坐标系转换程序.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、空间直角坐标系与大地坐标系转换程序#include#include#includeusingnamespacestd;#definePI(2.0*asin(1.0))voidmain(){doublea,b,c,d1,d2,f1,f2,m1,m2,B,L,H,X,Y,Z,W,N,e;//cout<<"请分别输入椭球的长半轴、短半轴(国际单位)"<>a>>b;a=;//以WGS84为例b=.3142;e=sqrt(a*a-

2、b*b)/a;c=a*a/b;intx;cout<<"请输入0或1,0:大地坐标系到空间直角坐标系;1:空间直角坐标系到大地坐标系"<>x;switch(x){case0:{cout<<"请分别输入该点大地纬度、经度、大地高(国际单位,纬度经度请按度分秒,分别输入)"<>d1>>f1>>m1>>d2>>f2>>m2>>H;B=PI*(d1+f1/60+m1/3600)/180;L=PI*(d2+f2/60+m2/3600)/180;W=sqrt(1-e*e

3、*sin(B)*sin(B));N=a/W;X=(N+H)*cos(B)*cos(L);Y=(N+H)*cos(B)*sin(L);Z=(N*(1-e*e)+H)*sin(B);cout<<"空间直角坐标系中X,Y,Z,坐标值(国际单位)分别为"<

4、标系中X,Y,Z的值(国际单位)"<>X>>Y>>Z;doublet,m,n,P,k,B0;m=Z/sqrt(X*X+Y*Y);//t0B0=atan(m);//初值n=Z/sqrt(X*X+Y*Y);P=c*e*e/sqrt(X*X+Y*Y);k=1+(a*a-b*b)/(b*b);t=m+P*n/sqrt(k+n*n);//现在为t1,之后代替t2,t3...B=atan(t);W=sqrt(1-e*e*sin(B)*sin(B));N=a/W;H=Z/sin(B)-N*

5、(1-e*e);inti;for(i=1;fabs(B-B0)>10E-10;i++)//每一次新的B与上一次计算的B比较,误差小于10E-10rad{B0=B;n=t;t=m+P*n/sqrt(k+n*n);//迭代B=atan(t);}W=sqrt(1-e*e*sin(B)*sin(B));N=a/W;//if((X<0)&(Y>0))//L=atan(Y/X)+PI;//if((X<0)&(Y<0))//L=atan(Y/X)+PI;//if((X>0)&(Y<0))//L=2*PI-at

6、an(Y/X);L=atan2(Y,X);H=sqrt(X*X+Y*Y)/cos(B)-N;intBd,Bf,Ld,Lf;doubleBm,Lm;B=180*B/PI;//B转化为度做单位Bd=B;Bf=(B-Bd)*60;Bm=((B-Bd)*60-Bf)*60;L=180*L/PI;//L转化为度做单位Ld=L;Lf=(L-Ld)*60;Lm=((L-Ld)*60-Lf)*60;cout<<"大地坐标系中纬度,经度,大地高(国际单位)分别为"<

7、setprecision(6)<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。