北京54坐标和经纬度坐标转换算法(C++)
//坐标正算
lbxy(double l, double b, double *x, double *y, int l0)
{double sa,sb,sep,sn,sy2,st,sm,sx,hb;double xx,yy,hd,sd;//判断值的范围if (l > 360 || l < 0 || b > 360 || b < 0){*x = l;*y = b;return;}l = l-l0;sa = 6378245; sb = 6356863.019;sep= 0.006738525415;hd = b*PI;hb = hd/180.0;st = tan(hb);sn=pow(sa,(double)2)/sqrt(pow(sa,(double)2)*pow(cos(hb),(double)2)+pow(sb,(double)2)*pow(sin(hb),(double)2));sy2=sep*pow(cos(hb),(double)2);sd = cos(hb)*l*PI;sm = sd/180.0;sx = 111134.861*b-(32005.78*sin(hb)+133.924*pow(sin(hb),(double)3)+0.697*pow(sin(hb),(double)5))*cos(hb);xx = sx+sn*st*(0.5*pow(sm,(double)2)+1.0/24.0*(5.0-pow(st,(double)2)+9.0*sy2)*pow(sm,(double)4));yy = sn*(sm+1.0/6.0*(1.0-pow(st,(double)2)+sy2)*pow(sm,(double)3)+1.0/120.0*(5.0-18.0*pow(st,(double)2)+pow(st,(double)4))*pow(sm,(double)5));*x = xx;*y = yy+500000;
}
//坐标反算
xylb(double l0, double x, double y, double *l, double *b)
{double bf,vf,nf,ynf,tf,yf2,hbf;double sa,sb,se2,sep2,mf;double w1,w2,w,w3,w4;double pi = 3.1415926;x = x/1000000.0;y = y - 500000.0;bf = 9.04353692458*x-0.00001007623*pow(x,2.0)-0.00074438304*pow(x,3.0)-0.00000463064*pow(x,4.0)+0.00000505846*pow(x,5.0)-0.00000016754*pow(x,6.0);hbf = bf * pi/ 180.0;sa = 6378245.0;sb = 6356863.019;se2 = 0.006693421623;sep2 = 0.006738525415;w1 = sin(hbf);w2 = 1.0 - se2 * pow(w1,(double)2);w = sqrt(w2);mf = sa*(1.0-se2)/pow(w,(double)3);w3 = cos(hbf);w4 = pow(sa,(double)2)*pow(w3,(double)2) + pow(sb,(double)2)*pow(w1,(double)2);nf = pow(sa,(double)2) / sqrt(w4);ynf = y/nf;vf = nf/mf;tf = tan(hbf);yf2 = sep2 * pow(w3, (double)2);*b = bf - 1.0/2.0 * vf * tf * (pow(ynf,(double)2)-1.0/12.0*(5.0+3.0*pow(tf,(double)2)+yf2-9.0*yf2*pow(tf,(double)2))*pow(ynf,(double)4))*180.0/pi;*l = 1.0/w3*ynf*(1.0-1.0/6.0*(1.0+2.0*pow(tf,(double)2)+yf2)*pow(ynf,(double)2)+1.0/120.0*(5.0+28.0*pow(tf,(double)2)+24.0*pow(tf,(double)2)+6.0*yf2+8.0*yf2*pow(tf,(double)2))*pow(ynf,(double)4))*180.0/pi;*l = l0 + *l;
}
北京54坐标和经纬度坐标转换算法(C++)相关推荐
- WGS84经纬度坐标与北京54坐标或者…
WGS84经纬度坐标与北京54坐标或者西安80坐标的关系 一般来讲,GPS直接提供的坐标(B,L,H)是1984年世界大地坐标系(Word Geodetic System1984即WGS-84 ...
- cgcs2000大地坐标系地图_北京54坐标和西安80坐标为何要统一成CGCS2000坐标?务林人必知!...
导 读 北京54坐标和西安80坐标,使用了很多年,为何要统一成CGCS2000坐标?启用CGCS2000坐标有何重大意义? 概述 北京54坐标系和西安1980坐标系的建立极大的促进了新中国测绘的发展, ...
- 北京54坐标和西安80坐标的区别
1984世界大地坐标系 wgs-84坐标系是美国国防部研制确定的大地坐标系,是一种协议地球坐标系.wgs-84坐标系的定义是:原点是地球的质心,空间直角坐标系的z轴指向 bih(1984.0)定义的地 ...
- 西安80转2000坐标参数_【技术】西安80坐标、北京54坐标转国家2000坐标(附软件)...
导读COORD GM2.0 全球管理版 终结更新版,功能强大,新增国家CGCS2000椭球面参数. 第一步:打开软件 第二步:设置椭球参数 选择:文件-椭球管理 第三步:设置中央子午线 选择:设置-地 ...
- WGS84经纬度坐标转北京54高斯投影地方坐标流程
坐标系统之间的坐标转换既包括不同的参心坐标之间的转换,或者不同的地心坐标系之间的转换,也包括参心坐标系与地心坐标系之间的转换以及相同坐标系的直角坐标与大地坐标之间的坐标转换,还有大地坐标与高斯平面坐标 ...
- WGS84经纬度坐标到北京54高斯投影坐标的转换
张兢1 王文瑞2 陈溪1 (1.广西第一测绘院 广西南宁 530023: 2.南宁市勘测院 广西南宁 530022) [摘 要] 本文针对从事测绘工作者普遍遇到的坐标转换问题,简要介绍ArcGIS实现 ...
- wgs84坐标格式转换度分秒_使用ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标的转换...
[摘 要] 本文针对从事测绘工作者普遍遇到的坐标转换问题,简要介绍ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标转换原理和步骤. [关键词] ArcGIS 坐标转换 投影变换 1 坐标转换 ...
- 4字节 经纬度_北京54坐标系转经纬度坐标系教程
如何将下载的影像变换为北京54坐标? 注意:投影转换成54坐标系需要下载无偏移卫星图像进行转换,有偏移的转换将导致转换后的卫星图像扭曲,坐标错误,无法配准. 第一步:选择无偏移地图源,下载你所需要的卫 ...
- 在ArcGIS中的西安80坐标系转北京54坐标系
一.数据说明 本次投影变换坐标的源数据采用的是采用1980西安的地理坐标系统,1985国家高程基准的1:50000的 DLG数据. 二.投影变换基础知识准备 北京54坐标系和西安80坐标系之间的转换其 ...
- cgcs2000大地坐标系地图_为什么要从北京54和西安80统一到CGCS2000?测绘人必知!...
导 读 北京54坐标和西安80坐标,使用了很多年,为何要统一成CGCS2000坐标?启用CGCS2000坐标有何重大意义? 概述 北京54坐标系和西安1980坐标系的建立极大的促进了新中国测绘的发展, ...
最新文章
- TS中的感叹号和问号的用法
- leetcode--无重复字符的最长子串--python
- madvr设置_用Kodi+MadVR播放4k HDR原盘电影方法
- 台积电和三星成半导体代工厂恶战主角 受谁影响?
- php string to array,php string转数组的方法
- 小熊维尼项目冲刺 第三天
- linux服务器配置端口,Linux服务器配置-新增端口
- 汇编语言学习——第四章 第一个汇编程序
- Vite + React 组件开发实践
- 音视频开发(40)---麦克风阵列声源定位 GCC-PHAT
- x390拆机_用了七八年的笔记本电脑依然流畅如初,从X230i换到X390
- [Python] 拉格朗日插值
- phpcms v9 后台添加修改页面空白页问题解决方法
- 剑指offer——跳台阶变态跳台阶矩形覆盖
- 解读前端开发工程师必备技能
- JAVA万能:JNLP在浏览器上以WEB方式运行JAVA程序
- 小学生python趣味编程-小学生C++趣味编程 PDF 全资料版
- Java写的答题助手项目分析与总结(二)
- win10系统计算机如何分盘,Win10怎么分盘|Win10新电脑怎么分盘
- 什么是上行带宽,什么是下行带宽