在前端中Proj4.js使用简单介绍及进阶应用
作者:Code_Geo
前言
Proj4 是一个用于处理 JavaScript 里的几何图形和坐标计算的库。虽然这个库的知名度不如其他几何处理库如 Turf.js,但它提供了用于多边形、点、线等几何对象的计算功能,类似于 GIS(地理信息系统)的某些功能。
一、基础知识
在使用Proj4之前,可以了解一下投影的相关定义,可以参考下面网站:
https://epsg.io/
http://spatialreference.org
二、Proj4js引用
前端添加Proj4js有三种方式:
1、从http://trac.osgeo.org/proj4js/wiki/Download下载,获取产品包中dist/proj4.js文件。
2、引入CDN上的Proj4js:https://cdnjs.com/libraries/proj4js
3、本地有Node.js,可以直接使用npm install proj4进行安装。
三、Proj4的简单使用
proj4.js中预定义了三个坐标系,其他的坐标系则需要自己定义了,下面以从WGS84(4326)到Web墨卡托(3857)的转换为例
const wgs84 = 'EPSG:4326'; const webMercator = 'EPSG:3857'; const pointWGS84 = [12.4924, 41.8902]; const pointWebMercator = proj4(wgs84, webMercator, pointWGS84); console.log(pointWebMercator);
更多的使用情况,带挖掘!!!
附:进阶应用
看了上面的例子,难道Porj4js在iClient中只能做坐标转换功能呢?当然不是的,最后,在向大家介绍个Proj4js的另一种用法,在iClient for Openlayers如何读取非4326或3857的地图数据。
例如我们获取到的地图数据如下,我们看到目标坐标系是EPSG:3395。
如何使用iClient for Openlayers直接浏览呢。
1、计算分辨率(固定写法)
2、定义3395坐标系,并设置地图范围
3、用Tile将地图展示出来
总结
到此这篇关于在前端中Proj4.js使用简单介绍及进阶应用的文章就介绍到这了,更多相关前端中Proj4.js使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!