WGS84与BJ54坐标系转换代码

WGS84与BJ54坐标系转换代码

ID:40578495

大小:32.50 KB

页数:9页

时间:2019-08-04

WGS84与BJ54坐标系转换代码_第1页
WGS84与BJ54坐标系转换代码_第2页
WGS84与BJ54坐标系转换代码_第3页
WGS84与BJ54坐标系转换代码_第4页
WGS84与BJ54坐标系转换代码_第5页
资源描述:

《WGS84与BJ54坐标系转换代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、publicclassCoordTrans7Param{publicdouble[,]values=newdouble[7,1];//{{dx},{dy},{dz},{rx},{ry},{rz},{k}};//publicdoubledx,dy,dz,rx,ry,rz,k;publicvoidSet4Param(doubledx,doubledy,doubledz,doublek){this.dx=dx;this.dy=dy;this.dz=dz;this.k=k;this.rx=this.ry=this.rz=0;}publicvoi

2、dSetRotationParamRad(doublerx,doublery,doublerz){this.rx=rx;this.ry=ry;this.rz=rz;}publicvoidSetRotationParamMM(doublerx,doublery,doublerz){SetRotationParamRad(rx*Math.PI/648000,ry*Math.PI/648000,rz*Math.PI/648000);}privatedouble[,]GetMx(){double[,]Mx=newdouble[,]{{1,0,0

3、},{0,Math.Cos(rx),Math.Sin(rx)},{0,-Math.Sin(rx),Math.Cos(rx)}};returnMx;}privatedouble[,]GetMy(){double[,]My=newdouble[,]{{Math.Cos(ry),0,-Math.Sin(ry)},{0,1,0},{Math.Sin(ry),0,Math.Cos(ry)}};returnMy;}privatedouble[,]GetMz(){double[,]Mz=newdouble[,]{{Math.Cos(rz),Math.

4、Sin(rz),0},{-Math.Sin(rz),Math.Cos(rz),0},{0,0,1}};returnMz;}privatedouble[,]GetM()//M=Mx*My*Mz?orM=Mz*My*Mx?{double[,]M=newdouble[3,3];MatrixTool.Multi(GetMz(),GetMy(),refM);MatrixTool.Multi(M,GetMx(),refM);returnM;}privatedouble[,]GetMdx(){double[,]mt={{0,0,0},{0,-Math

5、.Sin(rx),Math.Cos(rx)},{0,-Math.Cos(rx),-Math.Sin(rx)}};double[,]m=newdouble[3,3];MatrixTool.Multi(GetMz(),GetMy(),refm);MatrixTool.Multi(m,mt,refm);returnm;}privatedouble[,]GetMdy(){double[,]mt={{-Math.Sin(ry),0,-Math.Cos(ry)},{0,0,0},{Math.Cos(ry),0,-Math.Sin(ry)}};dou

6、ble[,]m=newdouble[3,3];MatrixTool.Multi(GetMz(),mt,refm);MatrixTool.Multi(m,GetMx(),refm);returnm;}privatedouble[,]GetMdz(){double[,]mt={{-Math.Sin(rz),Math.Cos(rz),0},{-Math.Cos(rz),-Math.Sin(rz),0},{0,0,0}};double[,]m=newdouble[3,3];MatrixTool.Multi(mt,GetMy(),refm);Ma

7、trixTool.Multi(m,GetMx(),refm);returnm;}privatedouble[,]specialMulti(double[,]m,double[,]X){introwNumM=m.GetLength(0);intcolNumM=m.GetLength(1);introwNumX=X.GetLength(0);intcolNumX=X.GetLength(1);intlines=rowNumX/colNumM;double[,]mt=MatrixTool.Init(rowNumM,colNumX);doubl

8、e[,]subX=MatrixTool.Init(colNumM,colNumX);double[,]res=MatrixTool.Init(rowNumM*lines,colNumX);for(inti=

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

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

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