在我们的实际项目开发过程中,会存在着很多的客户提供的数据是地方坐标系的数据,这些数据通常是一些类似于地块数据,点位数据等等的矢量数据。如何加载这些数据可能会让大家有些头疼。我们这篇文章来给大家提供几种解决方案。
首先要清楚一个基础的地理学知识,那就是地理坐标系和投影坐标系的区别。
地理坐标系又称为经纬度坐标系。就使用经纬度来表示一个点或者线或者多边形轮廓。因此地理坐标系的数据,通常存储的最核心的部分就是经纬度数据。
投影坐标系指的是通过地理坐标系进行各种数学上的投影和计算。不用经纬度表示坐标。而改用距离单位m。因此投影坐标系的数据存储不会存在经纬度数据。
我们的地方坐标系大多数都是投影坐标系,也即是地方坐标系的数据内部存储的不是经纬度,而是距离坐标。
而我们的webgis框架通常支持的坐标系只有三个,分别是两个地理坐标系和一个投影坐标系:
即wgs84坐标系和GCGS2000坐标系以及Web墨卡托投影坐标系。
因此想要加载地方坐标系的核心思路就是将地方坐标系的数据进行转换。
清楚了这个基本概念以后,我们就有了解决方案。
我们要么把地方坐标系想办法转换成GCGS2000坐标系然后再使用。因为在国内我们认为wgs84坐标系和GCGS2000坐标系是等同的,因此很多webgis框架是支持wgs84坐标系展示数据的,甚至有的框架还支持GCGS2000坐标系,所以我们把地方坐标系转换成GCGS2000之后,其实数据就可以正常加载了。
有些GIS框架支持的是web墨卡托投影坐标系,那么我们还需要把地方坐标系转换成GCGS2000之后再把这个经纬度坐标系转换成