OpenLayers自定义坐标系


背景

        OpenLayers默认只支持EPSG:4326和EPSG:3857,那想让它支持CGCS2000坐标系该怎么办?这个时候就需要自定义坐标系了,借助proj4.js(proj4js是一个转换点坐标从一个坐标系到另一个坐标系的JavaScript库,包括数据转换)即可实现。

准备工作,使OpenLayers支持坐标系(这里以EPSG:4512为例)

        1:下载proj4.js文件  https://www.bootcdn.cn/proj4js/

        2:查找坐标系定义  http://epsg.io/

        OpenLayers自定义坐标系_第1张图片

         OpenLayers自定义坐标系_第2张图片

        3 :页面引入proj4.js 

 

        4 :定义EPSG:4512坐标系 

   proj4.defs("EPSG:4512","+proj=tmerc +lat_0=0 +lon_0=135 +k=1 +x_0=500000 +y_0=0 +ellps=GRS80 +units=m +no_defs");

坐标转换测试

       默认坐标转换只能在EPSG:4326和EPSG:3857之间转换,如果没有自定义坐标系,下面语句是会报错的;自定义坐标系EPSG:4512之后,可以发现报错消失了,这也就说明,自定义坐标系成功了。

geom4512 = geom3857.clone().transform('EPSG:3857', 'EPSG:4512');

参考文献

https://blog.csdn.net/xk_zhang/article/details/53543606

你可能感兴趣的:(#,愚昧无知的GISer)