在WebGIS的开发中经常用到的地图投影为Web墨卡托和WGS84,故歌地图,bingmaps,百度地图,mapabc,mapbar,以及ArcGIS online上的大部分地图为Web墨卡托地图,ArcGIS online上最开始发布的地图投影为WGS84。
在开发过程中很多时候会遇到不同坐标系之间互转的问题,特别是底图使用Web墨卡托,定位(GPS,wifi等)信号坐标为WGS84坐标的时候,那么通用解决方案就是写一个坐标参考系的转换库,类似于proj4,但一般情况下很少用到那么多的参考系之间的互转,并且在客户端实现或者调用proj4都是一件很困难或者麻烦的事情,大多数情况下我们实现Web墨卡托坐标与WGS84坐标互转就可以了。
//经纬度转Wev墨卡托
dvec3 CMathEngine::lonLat2WebMercator(dvec3 lonLat)
{
dvec3 mercator;
double x = lonLat.x *20037508.34/180;
double y = log(tan((90+lonLat.y)*PI/360))/(PI/180);
y = y *20037508.34/180;
mercator.x = x;
mercator.y = y;
return mercator ;
}
//Web墨卡托转经纬度
dvec3 CMathEngine::WebMercator2lonLat( dvec3 mercator )
{
dvec3 lonLat;
double x = mercator.x/20037508.34*180;
double y = mercator.y/20037508.34*180;
y= 180/PI*(2*atan(exp(y*PI/180))-PI/2);
lonLat.x = x;
lonLat.y = y;
return lonLat;
}
经过笔者测试,与Google map dowloader软件系列的转换器相比,在14级别的某地图上测试有0.04个像素误差,基本可以无视。
其他级别和经纬区域有待测试。
原帖地址:http://www.gisall.com/html/68/104468-4865.html
分享到:
相关推荐
运行WGS84经纬度坐标转Web墨卡托投影坐标程序时,显示如下提示:按回车后,把输入的经纬度坐标转换成墨卡托投影坐标并输出,形式如下(保留小数后面2位):运行W
Web墨卡托坐标与WGS84坐标互转
由于将WGS84坐标系转化为UTM坐标系大多都是C或者C++代码,对于尝试用matlab的小伙伴来说,可能是对C/C++不熟悉或者不愿意自己动手去转换,所以我上传了使用matlab/simulink写的WGS84坐标系转化为UTM坐标系程序;...
GIS空间坐标系,WGS84经纬度,先转GCJ02国测02,再转web墨卡托的代码。项目中用到的分享给大家
在WebGIS的开发中经常用到的地图投影为Web墨卡托和WGS84。该方法可以实现这两种坐标的相互转换。
WGS84转google坐标;WGS84/GCJ02/BD09与墨卡托转换;地球坐标系 (WGS-84) 到火星坐标系 (GCJ-02) 的转换算法;WGS-84 到 GCJ-02 的转换(即 GPS 加偏)算法 火星坐标与地图坐标转换 C#版
GCJ2000与WGS84坐标转换和GCJ2000与BD09坐标转换源码
1、支持两种投影, GS84和Web墨卡托两种投影,EPSG4326和EPSG3857 两种标准 2、包含各个国家边界;
C# 墨卡托投影坐标与WGS84坐标转换,WGS84坐标转Web墨卡托坐标(单位:米),Web墨卡托转WGS84坐标,经纬度转World墨卡托(单位:米)。
墨卡托投影(102100)与地理坐标系(4326)互转工具javascript版本
WGA84经纬度坐标系转换围墨卡托投影坐标代码
主要介绍了java 地心坐标系(ECEF)和WGS-84坐标系(WGS84)互转的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
GIS领域常用地理坐标系统与投影坐标系统的关系与区别,定义参数与转换算法等。适用GIS相关行业数据处理、软件开发相关技术人员、GIS爱好者等。 内部包括: 地理坐标系统 ...WGS84与Web墨卡托坐标互转换算法
本项目对WGS84、GCJ02、百度坐标系之间进行转换。WGS84: 为一种大地坐标系,也是目前广泛使用的全球卫星定位系统(GPS)使用的坐标系。GCJ02: 戏称火星坐标系,是由中国国家测绘局制定的地理坐标系统,是由WGS84...
Python实现 支持墨卡托投影转地理坐标及地理坐标转墨卡托投影的转换函数 支持Numpy向量计算,可大批量转多对经纬度数据
世界经纬度转化为Unity中的世界/模型上的坐标,需要设置的有左上,右下的基准点配准,和模型中心,或场景中心点。Test为测试脚本,本版本为double 高精度类型经纬度转化。
相当于wgs84和墨卡托的相互转换 点击文件,输入的文件名改成自己的,直接运行集合输出 程序实现地理坐标的相互转换,可以学习到GIS领域gdal库的相关运用,同时学习基础的python语法
百度坐标(BD09)和 GCJ02 互转 GCJ02 和 WGS84 互转 百度坐标BD09 和 WGS84 互转 墨卡托 和 经纬度 互转
python实现百度墨卡托坐标,百度经纬度坐标,火星坐标,WGS84坐标之间的相互转换。
横轴墨卡托变换方程参考: https : //www.linz.govt.nz/data/geodetic-services/coordinate-conversion/projection-conversions/transverse-mercator-transformation-formulae