横轴墨卡托投影¶
各种形式的横向墨卡托投影是世界地形和近海测绘中应用最广泛的投影坐标系。它是一种共形投影,其中选定的子午线以恒定的比例投影到一条直线上。
Classification |
横斜圆柱 |
可用表格 |
正向和反向,球形和椭圆形 |
限定区域 |
全球,在中央子午线3900公里范围内完全准确 |
Alias |
tmerc公司 |
Domain |
二维 |
输入类型 |
大地坐标 |
输出类型 |
投影坐标 |

项目字符串: +proj=tmerc
¶
使用¶
在开发通用横向墨卡托坐标系之前,一些欧洲国家通过在两次世界大战期间绘制其领土地图,证明了基于栅格的保角地图的实用性。在实地计算这些地图上两点之间的距离(使用毕达哥拉斯定理)比使用经纬度分划系统下所需的三角公式更容易。在战后年代,这些概念被扩展到通用横轴墨卡托/通用极赤平极坐标系(UTM/UPS),这是一个基于栅格地图的全球(或通用)坐标系。
下表给出了横向墨卡托投影的特殊情况。
投影名称 |
地区 |
中央子午线 |
区域宽度 |
比例因子 |
---|---|---|---|---|
横轴墨卡托投影 |
全世界 |
各种各样 |
1000公里以下 |
各种各样 |
横向墨卡托向南 |
南部非洲 |
间隔2°E或11°E |
2° |
1.000 |
UTM北半球 |
全球赤道至84°N |
6°间隔E&W或3°E&W |
通常为6°,挪威和斯瓦尔巴群岛更宽 |
0.9996 |
UTM南半球 |
距赤道80°S以北的世界范围 |
6°间隔E&W或3°E&W |
始终为6° |
0.9996 |
高斯-克鲁格 |
前苏联,南斯拉夫,德国,南美,中国 |
根据地区不同,各不相同 |
通常小于6°,通常小于4° |
1.0000 |
高斯博阿加 |
意大利 |
根据地区不同,各不相同 |
6° |
0.9996 |
在德国地区使用高斯-克鲁格的例子(又名电子邮政编码:31467)
$ echo 9 51 | proj +proj=tmerc +lat_0=0 +lon_0=9 +k_0=1 +x_0=3500000 +y_0=0 +ellps=bessel +units=m
3500000.00 5651505.56
在意大利地区使用Gauss-Boaga的例子(EPSG:3004)
$ echo 15 42 | proj +proj=tmerc +lat_0=0 +lon_0=15 +k_0=0.9996 +x_0=2520000 +y_0=0 +ellps=intl +units=m
2520000.00 4649858.60
参数¶
备注
投影的所有参数都是可选的。
- +approx¶
6.0.0 新版功能.
使用下面“传统椭球形式”中描述的Evenden-Snyder算法。它比默认算法快,但精度较低,偏离中心子午线超过3°。
- +algo=auto/evenden_snyder/poder_engsager¶
7.1 新版功能.
选择要使用的算法。硬编码值和中定义的值 proj.ini 默认为
poder_engsager
;这是最精确的一个。使用auto时,将使用基于要转换的输入坐标的启发式方法来确定是否可以使用更快的Evenden-Snyder方法,以加快计算速度,而不会造成大于0.1 mm的误差(对于地球大小的椭球体)
- +lon_0=<value>¶
投影中心的经度。
默认为0.0。
- +lat_0=<value>¶
投影中心的纬度。
默认为0.0。
- +k_0=<value>¶
比例因子。确定投影中使用的比例因子。
默认为1.0。
- +x_0=<value>¶
假东距。
默认为0.0。
- +y_0=<value>¶
假北距。
默认为0.0。
数学定义¶
这里给出的横向墨卡托投影公式是由于Krüger [Krueger1912] 是谁把序列展开精确到 \(n^4\) 在哪里 \(n = (a-b)/(a+b)\) 是第三次变平。这些系列是扩展到六阶由恩格萨格和波德在年 [Poder1998] 和 [Engsager2007] . 在距离中央子午线3900公里(约占地球表面的57%)范围内提供了完全的双精度精度 [Karney2011tm] . 在距离中央子午线7000公里(约占地球表面的89%)范围内,误差小于0.1毫米。
这个公式由三个步骤组成:从椭球体到球体的共形投影,球面的横向墨卡托投影,校正这个投影以在中央子午线上给出恒定的比例。
中央子午线的刻度是 \(k_0\) 并由 +k_0
.
期权 +lon_0
设置中央子午线;在下面的公式中 \(\lambda\) 是相对于中央子午线的经度。
选项 +lat_0
, +x_0
和 +y_0
用于平移投影坐标,以便 \((\phi, \lambda) = (\phi_0, \lambda_0)\) ,投影坐标为 \((x,y) = (x_0,y_0)\) . 为了简化下面的公式,这些选项被设置为零(它们的默认值)。
因为投影是共形的,所以公式用复数表示是最方便的。特别是无标度投影坐标 \(\eta\) (与东距成比例, \(x\) ) \(\xi\) (与北距成比例, \(y\) )组合成单个复数 \(\zeta = \xi + i\eta\) 在哪里 \(i=\sqrt{{-1}}\) . 那么任何解析函数 \(f(\zeta)\) 定义一个保角映射(遵循Cauchy-Riemann条件)。
球形¶
因为完整(椭球体)投影包括球面投影作为分量之一,所以我们首先呈现带有用素数标记的坐标的球面形式, \(\phi'\) , \(\lambda'\) , \(\zeta' = \xi' + i\eta'\) , \(x'\) , \(y'\) ,这样它们就可以与相应的椭球坐标(没有素数)区分开来。球体的投影坐标由
正向投影¶
反投影¶
椭球形¶
投影坐标由下式给出
椭球和球面地理坐标以及椭球和球面投影坐标之间的转换系列以矩阵表示法给出,其中 \(\mathbf S(\theta)\) 和 \(\mathbf N\) 是长度为6的行和列向量
和 \(\mathsf C_{{\alpha,\beta}}\) 上部为三角形 \(6\times6\) 矩阵。
地理坐标关系¶
而不是用这个分析公式 \(\phi'\) ,之间的转换 \(\phi\) 和 \(\phi'\) 使用级数近似:
在这里 \(\phi'\) 是共形纬度(有时用 \(\chi\) ) \(\mathsf C_{{\chi,\phi}}\) 和 \(\mathsf C_{{\phi,\chi}}\) 是三角级数中的系数,用于在 \(\phi\) 和 \(\chi\) .
投影坐标关系¶
在中央子午线上 (\(\lambda = \lambda' = 0\) ) \(\zeta' = \phi'\) 是共形纬度 \(\chi\) 和 \(\zeta\) 起到校正纬度的作用(有时用 \(\mu\) ) \(\mathsf C_{{\mu,\chi}}\) 和 \(\mathsf C_{{\chi,\mu}}\) 是三角级数中的系数,用于在 \(\chi\) 和 \(\mu\) .
传统椭球形¶
下面的公式描述了在给出 +approx
选项。它们来自 [Snyder1987] ,但这里引用自 [Evenden1995] 和 [Evenden2005] . 这些公式比上面的公式更不准确,只在中央子午线5度以内有效。在这里 \(M(\phi)\) 是子午距离。