900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > c语言大地坐标转换空间坐标 空间直角坐标系与大地坐标系转换程序

c语言大地坐标转换空间坐标 空间直角坐标系与大地坐标系转换程序

时间:2020-05-09 12:00:41

相关推荐

c语言大地坐标转换空间坐标 空间直角坐标系与大地坐标系转换程序

《空间直角坐标系与大地坐标系转换程序》由会员分享,可在线阅读,更多相关《空间直角坐标系与大地坐标系转换程序(4页珍藏版)》请在人人文库网上搜索。

1、空间直角坐标系与大地坐标系转换程序#include#include#includeusing namespace std;#define PI (2.0*asin(1.0)void main() double a,b,c,d1,d2,f1,f2,m1,m2,B,L,H,X,Y,Z,W,N,e;/coutab;a=6378137;/ 以 WGS8釣例b=6356752.3142;e=sqrt(a*a-b*b)/a;c=a*a/b;int x;coutx;switch(x)case 0:coutd1f1m1d2f2m2H;B=PI*(d1+f1/60+m1/3600)/180;L=PI*(d2+f。

2、2/60+m2/3600)/180;W=sqrt(1-e*e*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);coutXYZ;double t,m,n, P,k,B0; m=Z/sqrt(X*X+Y*Y); /t0 B0=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=。

3、sqrt(1-e*e*sin(B)*sin(B);N=a/W;H=Z/sin(B) - N*(1-e*e);int i;for(i=1;fabs(B-B0)10E-10;i+)/ 每一次新的 B 与上一次计算的10E-10 radB0=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(X0)/L=atan(Y/X)+PI;/if(X0)&(Y0)/L=2*PI-atan(Y/X);L=atan2(Y,X);H=sqrt(X*X+Y*Y)/cos(B)-N;int Bd,Bf,Ld,Lf;do。

4、uble Bm,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 大地坐标系中纬度,经度,大地高(国际单位)分别为 fixedsetprecision(6)BmendlLd fixedsetprecision(6)Lmendlfixedsetprecision(6)Hendl;break;B 比较,误差小于Bd BfLf运行结果请输入眄如 阳大地坐标系到空间直角坐标系i -空间直角坐标系到大地坐标系 話分别输入空间直角坐标系中卷的值(国际单位)-2686431-0253934292457.8225433864951768393大地坐掃系中纬度,经度,大地高(匡I际单位)分别为即32 18-540000122 2 25.280008-0000005Press any ke to continue精选资料,欢迎下载Welcome !欢迎您的下载,资料仅供参考。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。