首页 > 编程知识 正文

空间直角坐标与大地坐标间的转换,大地坐标系与空间直角坐标系的相互转换

时间:2023-05-04 10:00:42 阅读:189122 作者:1697

//空间直坐标系(xyz )大地坐标系(经纬度)双精度=6378137.000; //长轴双精度=1/298.3; //扁平率doubleb=l4al4a *; //短轴doubleec=199 Come Come Everybody math.pow (,)/Math.pow(a) ) L4A,); //第一偏心拍数平方doubleecc=EC/(199 Come Come Everybody EC ); //第二偏心率平方doublex=2098813.2676; 双精度塷=4804967.1055; 双精度=3619537.1465; doublel=math.atan (yo /); if (x0 )L =Math.PI; doubler=math.sqrt (* xyo * yo ); double B1=math.atan (/); 双B2; while(true ) doublew1=math.sqrt ) 199 Come Come Everybody EC * ) math.sin ) B1 ) math.sin ) B1 ) ) ); double N1=a/W1; B2=math.atan ((n1 * EC * math.sin ) B1 ) ) /; if(math.ABS ) b299 Come Come Everybody B1 )=0.0000000001 ) break; B1=B2; }双精度=B2; doublew=math.sqrt (199 Come Come Everybody EC * (math.sin ) B2 ) math.sin (B2 ) ) ); doubleN=L4A/w; doubleh=r/math.cos(B2 ); system.out.println(L',' ','); //大地坐标系(经纬度)变换空间直坐标系(xyz )双精度=113.608437; 双精度=34.802459; 双高度=0; 双精度=6378137.0; double e2=0.00669438002290; //弧度=*转换为pi/180; //经度B=B * PI/180; //纬度双精度fac1=199 Come Come Everybody E2 * math.sin () math.sin ) ); doubleN=L4A/math.sqrt(fac1); //卯酉丸曲率半径double daita=0; //海拔异常,默认为0 double=daitaheight; doublex=(NH ) math.cos ) math.cos; doubleyo=(Nh ) math.cos ) ) math.sin(l); 双精度=(((199 Come Come Everybody E2 )) ) math.sin ); system.out.println (、“yo”、“”

这个方法在纬度和经度上有问题。 因为需要高度差,所以只在意高标准值。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。