精华内容
下载资源
问答
  • 针对Web墨卡托投影地图用于地理信息系统开发时其第三方应用程序接口仅支持浏览器/服务器模式的问题, 采用墨卡托投影式的变形并结合数据分片技术, 以Google地图为例提出一种Web墨卡托投影地图用于客户端/服务器模式的...
  • Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图...

    Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图投影为什么》。

    什么是墨卡托投影?

    墨卡托(Mercator)投影,又名“等角正轴圆柱投影”,荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。从球到平面,有个转换公式,这里就不再罗列。

    Google们为什么选择墨卡托投影?

    墨卡托投影的“等角”特性,保证了对象的形状的不变行,正方形的物体投影后不会变为长方形。“等角”也保证了方向和相互位置的正确性,因此在航海和航空中常常应用,而Google们在计算人们查询地物的方向时不会出错。

    墨卡托投影的“圆柱”特性,保证了南北(纬线)和东西(经线)都是平行直线,并且相互垂直。而且经线间隔是相同的,纬线间隔从标准纬线(此处是赤道,也可能是其他纬线)向两级逐渐增大。

    但是,“等角”不可避免的带来的面积的巨大变形,特别是两极地区,明显的如格陵兰岛比实际面积扩大了N倍。不过要是去两极地区探险或科考的同志们,一般有更详细的资料,不会来查看网络地图的,这个不要紧。

    (图片来源,Nelson Jhon)

    为什么是圆形球体,而非椭球体?

    这说来简单,仅仅是由于实现的方便,和计算上的简单,精度理论上差别0.33%之内,特别是比例尺越大,地物更详细的时候,差别基本可以忽略。

    Web墨卡托投影坐标系:

    以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标原点,向东向北为正,向西向南为负。

    X轴:由于赤道半径为6378137米,则赤道周长为2*PI*r = 2*20037508.3427892,因此X轴的取值范围:[-20037508.3427892,20037508.3427892]。

    Y轴:由墨卡托投影的公式可知,同时上图也有示意,当纬度φ接近两极,即90°时,y值趋向于无穷。这是那些“懒惰的工程师”就把Y轴的取值范围也限定在[-20037508.3427892,20037508.3427892]之间,搞个正方形。

    懒人的好处,众所周知,事先切好静态图片,提高访问效率云云。俺只是告诉你为什么会是这样子。因此在投影坐标系(米)下的范围是:最小(-20037508.3427892, -20037508.3427892 )到最大 (20037508.3427892, 20037508.3427892)。

    对应的地理坐标系:

    按道理,先讲地理坐标系才是,比如球体还是椭球体是地理坐标系的事情,和墨卡托投影本关联不大。简单来说,投影坐标系(PROJCS)是平面坐标系,以米为单位;而地理坐标系(GEOGCS)是椭球面坐标系,以经纬度为单位。具体可参考《坐标系、坐标参照系、坐标变换、投影变换》。

    经度:这边没问题,可取全球范围:[-180,180]。

    纬度:上面已知,纬度不可能到达90°,懒人们为了正方形而取的-20037508.3427892,经过反计算,可得到纬度85.05112877980659。因此纬度取值范围是[-85.05112877980659,85.05112877980659]。其余的地区怎么办?没事,企鹅们不在乎。

    因此,地理坐标系(经纬度)对应的范围是:最小(-180,-85.05112877980659),最大(180, 85.05112877980659)。至于其中的Datum、坐标转换等就不再多言。

    如果想知道坐标怎么计算的,请看全解析第2季《相关坐标计算》;更深入的和GIS相关的第3季《WKT形式表示》。

    展开全文
  •  本科地理学的时候学了一推投影,没用的居多,现在常用的就是高斯投影、墨卡托投影(横轴墨卡托[UTM,高斯]),但是当时也没学好,这里就介绍一下网络地图最常用的web墨卡托投影了,百度高德天地图现在都用这个== ...

     

    一、引言

     

          本科地理学的时候学了一推投影,没用的居多,现在常用的就是高斯投影、墨卡托投影(横轴墨卡托[UTM,高斯]),但是当时也没学好,这里就介绍一下网络地图最常用的web墨卡托投影了,百度高德天地图现在都用这个==

     

     

    二、web墨卡托投影介绍

     

          先介绍一下墨卡托投影:墨卡托投影,是正轴等角圆柱投影。由荷兰地图学家墨卡托(G.Mercator)于1569年创立。假想一个与地轴方向一致的圆柱切或割于地球,按等角条件,将经纬网投影到圆柱面上,将圆柱面展为平面后,即得本投影。墨卡托投影在切圆柱投影与割圆柱投影中,最早也是最常用的是切圆柱投影。

          要是实在不是很想动脑子的话就玩一下这个动画点击打开链接,可以很直观的看懂原理

          然后就是web墨卡托和墨卡托的区别,web墨卡托是将椭球换成圆球了,就这么简单。

     

     

          web墨卡托的经纬度投影范围:经度[-180,180],维度[-85.05112877980659,85.05112877980659];

          投影坐标范围:x[-20037508.3427892,20037508.3427892],y[-20037508.3427892,20037508.3427892];

          具体规则

          1、先根据2πR赤道周长算出投影坐标x[-20037508.3427892,20037508.3427892],

          2、然后按照y轴范围与x轴范围一样长的规则定出投影坐标y[-20037508.3427892,20037508.3427892],

          3、然后根据web墨卡托投影公式算出维度[-85.05112877980659,85.05112877980659],

          4、经度[-180,180]这个就不用解释了。

     这几个步骤中详细解释一下步骤3

    x表示赤道方向,y表示子午线方向,lambda表示经度,phi表示纬度,即有经纬度( philambda)对应的墨卡托平面坐标即为(x*R,y*R)。然后我根据下面的公式算一下:通过投影y轴算经纬度中的纬度:Math.atan(Math.sinh(3.14))*180/3.14,直接js就可以计算,这里的3.14代替了π,π是πR/R(规定的y周范围/R)得到的。

     

     

     

    三、使用web墨卡托原因

     

          目前国内做数字城市方面的GIS项目、产品和公众应用,常涉及的投影方式主要有:面向局部区域的二维平面高斯投影(横轴墨卡托,横轴圆柱投影)、面向大范围(如全省、全国)的兰伯特投影(圆锥投影)、面向大范围的经纬度等间隔直投,而互联网上的大部分全国公众地图网站(百度、google、搜狗)则是另外一种就是——“web墨卡托”。

          在市一级的小范围区域的GIS系统,比如规划局、国土局、建设局的系统,大都使用高斯投影,以便与地方地形图测绘、工程报建一直采用的坐标系相一致。高斯投影的特点也很明显,分带,适合小范围局部,不适合应用于大省、全国等大范围应用,若是强制按某带投影,则远离中央经线的区域的角度、距离、面积全部变形严重。

     

          然后我们的选择就只有经纬度直投和web墨卡托了,为什么从中选择了web墨卡托呢?

          经纬度直投:经纬度等间隔直投”的特点是相同的经纬度间隔在屏幕上的间距相等,程序员应该比较喜欢,没有复杂的坐标变换。但是只是在低纬度地区长度、角度、面积、形状变化比较小,越向高纬度,水平距离变长越大,很小的纬圈都变得和赤道一样长。同时要素自身会变形,长方形会变成上宽下窄的倒梯形。因为我家维度不算太高,所以感觉还可以觉得没啥事儿,但是东北人民受不了啊。 天地图曾经采用的是经纬度直投,但是现在改成web墨卡托了。

    可以查看天地图地址http://map.tianditu.gov.cn/,默认为web墨卡托,按照下图设置设置为经纬度直投

    效果很明显,房子全部都是歪的,成平行四边形了……

          web墨卡托:纵向距离也是随着纬度增大而变长, 横向变大,同时纵向也变大,而且变化比例接近(因为0.0000X纬度引起可忽略),结果就是只把一个图形“原样放大”了,而形状却没有变化。

     

     

    四、web墨卡托投影问题

     

    1、web墨卡托虽然形状没变,但是高纬度地区的面积比真实同样放大了很多倍

         同一张全中国范围图上,三亚和哈尔滨,选取同样真实面积的区域,在投出来的图上面积相差好多倍,但是他们各自区域中的图形都没变型。  

         其实这个这个不影响我们的需求,我们是要在同一种投影下既能实现大范围的小比例尺显示,又能在大比例尺下最大限度接近真实世界,当放大到城市、街道级别时,当前屏幕展示的仅仅是这个小范围,此时您看到的是形状、角度未变化的,符合真实世界的,当您到另一区域,也是如此。您根本“没机会”去同时感受“小三亚”和“大哈尔滨”。

     

    2、地图切片同级别的比例尺不同

          web墨卡托这种方式投影出的地图,然后切成分级瓦片,同级别的瓦片中,三亚和哈尔滨的比例尺不同,而同比例尺栅格瓦片,是存在于不同的级别中的。不过这一切仅仅是技术存储上的,与用户的感觉是没有关系的。

     

    3、航线图是弯曲的

          当我们在地球曲面上航行的时候都是挑着最近的航线飞行,一旦投影到web墨卡托上面便不再遵循两点之间直线最短的定理。所以这个地图给飞行员来说参考价值还是有待商榷==

     

     

    五、总结

     

     

    • web墨卡托投影介绍

     

    • web墨卡托使用原因

     

    • web墨卡托存在问题

     

     

          地图投影不可能全顾虑到,web墨卡托已经算是折中最好的方案了,毕竟人生也不肯能是完美的,关键在于我们看中的是什么,是亲情、爱情、事业还是友情,不可能把这几项全部做的很完美的==

     

     

     

    展开全文
  • Web墨卡托投影坐标系

    千次阅读 2018-11-19 16:12:32
    Web墨卡托投影坐标系: 以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标原点,向东向北为正,向西向南为负。 X轴:由于赤道半径为6378137米,则赤道周长为2*PI*r = 2*20037508.3427892...

    Web墨卡托投影坐标系

    以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标原点,向东向北为正,向西向南为负。

    X轴:由于赤道半径为6378137米,则赤道周长为2*PI*r = 2*20037508.3427892,因此X轴的取值范围:[-20037508.3427892,20037508.3427892]。

    Y轴:由墨卡托投影的公式可知,同时上图也有示意,当纬度φ接近两极,即90°时,y值趋向于无穷。

    这是那些“懒惰的工程师”就把Y轴的取值范围也限定在[-20037508.3427892,20037508.3427892]之间,搞个正方形。

    众所周知,事先切好静态图片,提高访问效率云云。俺只是告诉你为什么会是这样子。因此在投影坐标系(米)下的范围是:最小(-20037508.3427892, -20037508.3427892 )到最大 (20037508.3427892, 20037508.3427892)。

    //经纬度转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;
    }

    经纬度

    地球是一个椭球,Datum是一组用于描述这个椭球的数据集合。最常用的一个Datum是WGS84(World Geodetic System 1984),它的主要参数有:

    • 坐标系的原点是地球质心(center of mass);
    • 子午线(meridian),即零度经线,位于格林威治子午线Royal Observatory所在纬度往东102.5米所对应的的经线圈;
    • 椭球截面长轴为a=6378137米;
    • 椭圆截面短轴为b=6356752.3142米,可选参数;
    • 扁平比例(flattening)f=(a−b)/a=1/298.257223563;
    • geoid,海平面,用于定义高度,本文从略。

    通过以上参数设定,我们才能对地球上的任意一个位置用经度、纬度、高度三个变量进行描述。所以当我们获取一组经纬度信息时,首先要弄明白这组信息对应的Datum。

    参考:https://segmentfault.com/a/1190000011276788

    投影

    地图是显示在平面上的,因此需要将球面坐标转换为平面坐标,这个转换过程称为投影。最常见的投影是墨卡托(Mercator)投影,它具有等角性质,即球体上的两点之间的角度方位与平面上的两点之间的角度方位保持不变,因此特别适合用于导航。

    Web墨卡托投影(又称球体墨卡托投影)是墨卡托投影的变种,它接收的输入是Datum为WGS84的经纬度,但在投影时不再把地球当做椭球而当做半径为6378137米的标准球体,以简化计算。

    Web墨卡托投影有两个相关的投影标准,经常搞混:

    • EPSG4326:Web墨卡托投影后的平面地图,但仍然使用WGS84的经度、纬度表示坐标;
    • EPSG3857:Web墨卡托投影后的平面地图,坐标单位为米。
    展开全文
  • 谷歌地图与开放式API和WEB墨卡托投影
  • 墨卡托及Web墨卡托投影

    千次阅读 2018-03-20 16:31:26
    Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图...

    Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图投影为什么》。

    什么是墨卡托投影?

    墨卡托(Mercator)投影,又名“等角正轴圆柱投影”,荷兰地图学家墨卡托(Mercator)在1569年拟定,假设地球被围在一个中空的圆柱里,其赤道与圆柱相接触,然后再假想地球中心有一盏灯,把球面上的图形投影到圆柱体上,再把圆柱体展开,这就是一幅标准纬线为零度(即赤道)的“墨卡托投影”绘制出的世界地图。从球到平面,有个转换公式,这里就不再罗列。

    Google们为什么选择墨卡托投影?

    墨卡托投影的“等角”特性,保证了对象的形状的不变行,正方形的物体投影后不会变为长方形。“等角”也保证了方向和相互位置的正确性,因此在航海和航空中常常应用,而Google们在计算人们查询地物的方向时不会出错。

    墨卡托投影的“圆柱”特性,保证了南北(纬线)和东西(经线)都是平行直线,并且相互垂直。而且经线间隔是相同的,纬线间隔从标准纬线(此处是赤道,也可能是其他纬线)向两级逐渐增大。

    但是,“等角”不可避免的带来的面积的巨大变形,特别是两极地区,明显的如格陵兰岛比实际面积扩大了N倍。不过要是去两极地区探险或科考的同志们,一般有更详细的资料,不会来查看网络地图的,这个不要紧。

     

    (图片来源,Nelson Jhon)

    为什么是圆形球体,而非椭球体?

    这说来简单,仅仅是由于实现的方便,和计算上的简单,精度理论上差别0.33%之内,特别是比例尺越大,地物更详细的时候,差别基本可以忽略。

    Web墨卡托投影坐标系

    以整个世界范围,赤道作为标准纬线,本初子午线作为中央经线,两者交点为坐标原点,向东向北为正,向西向南为负。

    X轴:由于赤道半径为6378137米,则赤道周长为2*PI*r = 2*20037508.3427892,因此X轴的取值范围:[-20037508.3427892,20037508.3427892]。

    Y轴:由墨卡托投影的公式可知,同时上图也有示意,当纬度φ接近两极,即90°时,y值趋向于无穷。这是那些“懒惰的工程师”就把Y轴的取值范围也限定在[-20037508.3427892,20037508.3427892]之间,搞个正方形。

    懒人的好处,众所周知,事先切好静态图片,提高访问效率云云。俺只是告诉你为什么会是这样子。因此在投影坐标系(米)下的范围是:最小(-20037508.3427892, -20037508.3427892 )到最大 (20037508.3427892, 20037508.3427892)。

    对应的地理坐标系:

    按道理,先讲地理坐标系才是,比如球体还是椭球体是地理坐标系的事情,和墨卡托投影本关联不大。简单来说,投影坐标系(PROJCS)是平面坐标系,以米为单位;而地理坐标系(GEOGCS)是椭球面坐标系,以经纬度为单位。具体可参考《坐标系、坐标参照系、坐标变换、投影变换》。

    经度:这边没问题,可取全球范围:[-180,180]。

    纬度:上面已知,纬度不可能到达90°,懒人们为了正方形而取的-20037508.3427892,经过反计算,可得到纬度85.05112877980659。因此纬度取值范围是[-85.05112877980659,85.05112877980659]。其余的地区怎么办?没事,企鹅们不在乎。

    因此,地理坐标系(经纬度)对应的范围是:最小(-180,-85.05112877980659),最大(180, 85.05112877980659)。至于其中的Datum、坐标转换等就不再多言。

    如果想知道坐标怎么计算的,请看全解析第2季《相关坐标计算》;更深入的和GIS相关的第3季《WKT形式表示》。

     

    注:除了google地图,还有bing地图,mapABC地图在线地图服务均采用了web墨卡托投影,esri的onlilne地图也有使用此地图投影,除了在切片时候减少图片数量以外,还是大家为了marshup方便,均采用了web 墨卡托投影方式,但在地图显示上面为了大家易懂,还是转换成了经纬度的方式显示.

     转自 http://blog.csdn.net/liyan_gis/article/details/8021514

    展开全文
  • Web墨卡托投影(转)

    2014-06-24 09:36:00
    Google Maps地图投影全解析(1):Web墨卡托投影 Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球...
  • 同事开发需要将web墨卡托投影坐标转为WGS 84坐标,记忆不是很清晰,拿python试验了下,也当是复习。 一、WGS 84坐标转web墨卡托坐标: 转换公式: x = lon*20037508.34/180 y = log(tan((90+lat)*PI/360))/...
  • web墨卡托和墨卡托的区别,web墨卡托是将椭球换成圆球 使用web墨卡托原因 常涉及的投影方式主要有: 面向局部区域的二维平面高斯投影(横轴墨卡托,横轴圆柱投影)、 面向大范围(如全省、全国)的兰伯特投影...
  • 点击“Web Mector 影像一键发布”按钮,即可一键发布安装包自带的全球1-7级谷歌卫星地图,该卫星地图为Web墨卡托投影,发布效果如下图所示。 二、瓦片地址分析 从浏览器的访问地址“http://127
  • arcgis server 中Web墨卡托投影坐标与WGS-84坐标的转换 //经纬度转墨卡托 function lonlat2mercator(lonlat){ var mercator={x:0,y:0}; var x = lonlat.x *20037508.34/180; var y = Math.log(Math....
  • 许久没有使用坐标转换,记忆有些模糊了,以后还是会用到,先将WGS84与web墨卡托转换复习一下; 1.84转web墨卡托 //核心公式 平面坐标x = 经度*20037508.34/108 平面坐标y = log(tan((90+纬度)*PI/360))/...
  • Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图...
  • Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图...
  • Google Maps、Virtual Earth等网络地理所使用的地图投影,常被称作Web Mercator或Spherical Mercator,它与常规墨卡托投影的主要区别就是把地球模拟为球体而非椭球体。建议先对地图投影知识做一个基本的了解,《地图...
  • GoogeleLayer.as /** * @Description: * @Type:组件类 * @Copyright: Copyright 2013 * @Company: * @Author : NEIL * @Date:2013-10-21 * @Version 1.0 */ package com { import ...
  • 墨卡托投影

    万次阅读 2018-11-08 15:35:00
    4.3、Web墨卡托投影 五、墨卡托投影的缺点 一、墨卡托投影基本介绍  墨卡托投影,是正轴等角圆柱投影,圆柱投影的一种,由荷兰地图学家墨卡托于1569年创拟。为地图投影方法中影响最大的投影。  假设地球被围.....
  • 首先要理解,投影的结果根据对象的不同,会有不同的投影坐标计算公式,主要分为两种:球面投影与椭球面投影。 先放结论:从意义上来说...国外通常也将高斯克吕格投影和横轴墨卡托投影等同,但这在很多的论文中已经被多

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,494
精华内容 597
关键字:

web墨卡托投影