Google Maps地图投影全解析(3):WKT形式表示
update20090601:EPSG对该投影的编号设定为EPSG:3857,对应的WKT也发生了变化,下文不再修改,相对来说格式都是那样,可以到http://www.epsg-registry.org 网站输入SRID进行查询。
Google Maps和Virtual Earth等的流行程度不用多讲,然而他们所使用的Web Mercator或Spherical Mercator在很长一段时间内并没有被EPSG的投影数据库所接纳。EPSG认为它不能算作科学意义上的投影,所以只是给了一个EPSG:900913的标号(SRID),这个标号游离在EPSG常规标号范围之外。(EPSG、SRID是什么?参见《》。)
到了2008年5月(据SharpGIS同学), EPSG恍然明白,不管椭球体还是球体,其实都是对地球的模拟,只是精确程度上的差别,没有本质上的不同。或者是不得不接受广泛的事实标准,接纳了这个投影,定义投影坐标系PROJCS的名字为“Popular Visualisation CRS / Mercator”,SRID为EPSG:3785;地理坐标系GEOGCS的名字为“Popular Visualisation CRS”,SRID为“EPSG:4055”。这些标号已经进入“正常范围”。(PS:这个Visualisation 是英式英语写法?)
PROJCS 的WKT《》写法如下,GEOGCS、Datum等的WKT表示参见《Spherical/Web Mercator: EPSG code 3785》。附带说一句,Web Mercator在ESRI公司的编号(ESRI叫它Well Known ID?)暂时是102113,或许偶尔用得到。
PROJCS["Popular Visualisation CRS / Mercator", GEOGCS["Popular Visualisation CRS", DATUM["Popular_Visualisation_Datum", SPHEROID["Popular Visualisation Sphere",6378137,0, AUTHORITY["EPSG","7059"]], TOWGS84[0,0,0,0,0,0,0], AUTHORITY["EPSG","6055"]], PRIMEM["Greenwich",0, AUTHORITY["EPSG","8901"]], UNIT["degree",0.01745329251994328, AUTHORITY["EPSG","9122"]], AUTHORITY["EPSG","4055"]], UNIT["metre",1, AUTHORITY["EPSG","9001"]], PROJECTION["Mercator_1SP"], PARAMETER["central_meridian",0], PARAMETER["scale_factor",1], PARAMETER["false_easting",0], PARAMETER["false_northing",0], AUTHORITY["EPSG","3785"], AXIS["X",EAST], AXIS["Y",NORTH]]
请看基础介绍全解析第1季《Web墨卡托投影》;如果想知道坐标怎么计算的,请看全解析第2季《相关坐标计算》。
附记:这个问题算是老问题,费这么多时间,主要就是分享,毕竟自己还算是相当明白。也是看见有人不懂乱说,写篇文章纠正下。当然谁都会犯错误,包括我这篇是否100%正确,你也可以质疑。起这个题目其实不是本意,因为它不科学,甚至EPSG的INFORMATION_SOURCE字段写的都是Microsoft,只不过国内Google更火些,SEO一下。
这篇文章除了参考文中所列链接外, Microsoft、Google、EPSG、OGC等组织相关的说明外,Charlie Savage、SharpGIS、Nelson John等博客也是非常重要的来源,在此致以谢意。
Google Maps地图投影全解析(3):WKT形式表示的更多相关文章
- Google Guava Cache 全解析
Google guava工具类的介绍和使用https://blog.csdn.net/wwwdc1012/article/details/82228458 LoadingCache缓存使用(Loadi ...
- Google Maps API Web Services
原文:Google Maps API Web Services 摘自:https://developers.google.com/maps/documentation/webservices/ Goo ...
- 1.Google Chrome浏览器 控制台全解析
Google Chrome浏览器 控制台全解析 在Google Chrome浏览器出来之前,我一直使用FireFox,因为FireFox的插件非常丰富,更因为FireFox有强大的Firebug,对于 ...
- Google Maps API V3 之 路线服务
Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...
- Android系统Google Maps开发实例浅析
Google Map(谷歌地图)是Google公司提供的电子地图服务.包括了三种视图:矢量地图.卫星图片.地形地图.对于Android系统来说,可以利用Google提供的地图服务来开发自己的一些应用. ...
- Google maps API开发
原文:Google maps API开发 Google maps API开发(一) 最近做一个小东西用到google map,突击了一下,收获不小,把自己学习的一些小例子记录下来吧 一.加载Googl ...
- javascript ajax 脚本跨域调用全解析
javascript ajax 脚本跨域调用全解析 今天终于有点时间研究了一下javsscript ajax 脚本跨域调用的问题,先在网上随便搜了一下找到一些解决的办法,但是都比较复杂.由是转到jqu ...
- Google Maps V3 之 路线服务
概述 您可以使用 DirectionsService 对象计算路线(使用各种交通方式).此对象与 Google Maps API 路线服务进行通信,该服务会接收路线请求并返回计算的结果.您可以自行处理 ...
- Gson全解析(中)-TypeAdapter的使用
TypeAdapter介绍 前面的Gson全解析(上)中我们理解并分别运用了JsonSerializer和JsonDeserializer进行JSON和java实体类之间的相互转化.这里利用TypeA ...
随机推荐
- C语言第六次作业
#include <stdio.h> int main() { ; printf("输入几个数:"); scanf("%d",&n); ;i ...
- C/C++ 结构体 数组 函数传递
#include <stdio.h> #include <stdlib.h> struct student{ int num; ]; double dec; }; void s ...
- android nfc中Ndef格式的读写
1. 在onCreate()中获取NfcAdapter对象: NfcAdapter nfcAdapter = NfcAdapter.getDefaultAdapter(this); 2.在onNewI ...
- android aidl
参考: http://blog.csdn.net/u014614038/article/details/48399935 本文提供了一个关于AIDL使用的简单易懂的例子,分为客户端和服务端两部分,分别 ...
- vnc服务的安装与配置
1. 安装必要的软件包 系统为CentOS 6.0,为最小化安装. a. 安装vncserver服务端和客户端端 yum install tigervnc tigervnc-server -y b. ...
- 夺命雷公狗-----React---27--小案例之react经典案例todos(清除已完成)
这个功能其实也是很简单的,就只是让todos里面的内isDown进行取反即可 然后在Zong里面进行下修改即可 效果如下所示: 代码如下所示: <!DOCTYPE html> <ht ...
- 【unity3d游戏开发脚本笔记之一:坐标系选择对物体运动的影响】
时间:2016年9月24日17:38:21 作者:yexiaopeng 博客园 在unity3d的世界中,其坐标系可分为四种,世界坐标系-WorldSpace 本地坐标系-LocalS ...
- 【001:C# 中 get set 简写存在的陷阱】
如下代码: public class Age { private int ageNum ; public int AgeNum { get{ return this.ageNum; } set{ th ...
- Ubuntu14.04台式机r8169有线网卡驱动问题
由于台式在安装了Ubuntu14.04后插入网线后灯不亮,不能使用有线网. 查找资料发现原来是网卡驱动问题,解决办法如下: 1.查看网卡驱动名称 lspci -v 找到以太网连接的kernel dri ...
- 基于MDK的mbed工程建立
个人更喜欢mdk作为IDE来编写代码,而mbed作为一个开源项目,有大量优秀代码可以借鉴使用,今后一段时间都会主要看mbed平台的代码以及国内ebox平台代码 1 首先登陆mbed在 ...