一、坐标系代码
1.1 EPSG:4326 (WGS84)
前面说了 WGS84 是目前最流行的地理坐标系统。在国际上,每个坐标系统都会被分配一个 EPSG 代码,EPSG:4326 就是 WGS84 的代码。GPS是基于WGS84的,所以通常我们得到的坐标数据都是WGS84的。一般我们在存储数据时,仍然按WGS84存储。
- 原点:地球质心。
- Z轴:BIH(1984.0)定义的地极(CTP)方向,即国际协议原点CIO,它由IAU和IUGG共同推荐。
- X轴:指向BIH定义的零度(本初)子午面和CTP赤道的交点。
- Y轴:和Z,X轴构成右手坐标系。
- WGS84椭球体:国际大地测量与地球物理联合会第17届大会测量常数推荐值,长轴6378137.000m,短轴6356752.314,扁率1/298.257223563。
1.2 EPSG:3857 (Pseudo-Mercator)
伪墨卡托投影,也被称为球体墨卡托,Web Mercator。它是基于墨卡托投影的,把 WGS84坐标系投影到正方形。我们前面已经知道 WGS84 是基于椭球体的,但是伪墨卡托投影把坐标投影到球体上,这导致两极的失真变大,但是却更容易计算。这也许是为什么被称为”伪“墨卡托吧。另外,伪墨卡托投影还切掉了南北85.051129°纬度以上的地区,以保证整个投影是正方形的。因为墨卡托投影等正形性的特点,在不同层级的图层上物体的形状保持不变,一个正方形可以不断被划分为更多更小的正方形以显示更清晰的细节。很明显,伪墨卡托坐标系是非常显示数据,但是不适合存储数据的,通常我们使用WGS84 存储数据,使用伪墨卡托显示数据。
Web Mercator 最早是由 Google 提出的,当前已经成为 Web Map 的事实标准。但是也许是由于上面”伪“的原因,最初 Web Mercator 被拒绝分配EPSG 代码。于是大家普遍使用 EPSG:900913(Google的数字变形) 的非官方代码来代表它。直到2008年,才被分配了EPSG:3785的代码,但在同一年没多久,又被弃用,重新分配了 EPSG:3857 的正式代码,使用至今。
1.3 EPSG:4978(4979?)(ECEF):地心地固坐标系
原点位于地球质心,z轴沿着地轴指向北极,y轴沿着赤道平面与格林威治子午面的交线上,y轴在赤道平面与x轴z轴满足右手法则,该坐标系一般和WGS84坐标系相互转换,属于同一基准下不同表达。
1.4 东北天/当地水平坐标系
当地水平坐标系的原点位于载体所在的地球表面,x轴和y轴在当地水平面内,分别指向东向和北向,z轴垂直向上,与x轴y轴满足右手法则,称为东-北-天(e-n-u)坐标系,相对另一坐标系(北东地)。
1.5 车体坐标系
车体坐标系原点在载体质量中心与载体固链,x轴沿载体轴指向右,y轴指向前,z轴和xy满足右手坐标法则指天,又称为右-前-上(r-f-u)坐标系
二、坐标系变换
坐标系变换就是在相同空间点在不同椭球体下的不同坐标表达形式的数值换算,主要分为三种:
- 大地坐标系与空间直角坐标系的相互转换(经纬度转ECEF)。
- 空间直角坐标系与站心坐标系的转换(ECEF转工程)。
- 大地坐标系与平面坐标系的转换(经纬度转投影坐标)
三、带号计算
(1) 北半球地区,选择最后字母为“N”的带;
(2) 可根据公式计算,带数=(经度整数位/6)的整数部分+31 如:江西省南昌新建县某调查单元经度范围115°35′20″—115°36′00″, 带数=115/6+31=50,选50N,即WGS 1984 UTM ZONE 50N。
(3)如WGS_1984_UTM_Zone_49N,这个49的计算方法:
49:从180度经度向东,每6度为一投影带,第49个投影带
49=(114+180)/6,这个114为49投影带的最大经线
四、GDAL库读写dxf/dwg
gdal库读写dxf和gdal库读写dxf类似,但是gdal读写dxf不支持multiPoint类型,shapefile支持该类型。同时,gdal库中有ogr2pgr.exe小工具可以进行shp和dxf格式之间的转换,还有一些其他的小工具有待学习。