我需要找到一种方法来使用 php 将一对 WGS84 地理坐标转换为 ETRS89 投影坐标 (UTM)。
例子:
(lat)37.255205, (long)-5.549390, (height)141.562284
有人知道我该怎么做吗?
谢谢!!
我需要找到一种方法来使用 php 将一对 WGS84 地理坐标转换为 ETRS89 投影坐标 (UTM)。
例子:
(lat)37.255205, (long)-5.549390, (height)141.562284
有人知道我该怎么做吗?
谢谢!!
您可以使用 7 参数 Helmert 变换来完成(虽然我不确定准确性)。但这取决于您所说的WGS84是什么意思。我相信 ITRF2008 是当前的 GPS 参考框架。GPS 位置因大陆漂移而随时间变化,其中 ETRS89 是固定的欧洲板块参考,因此您的参数取决于时间。
所附链接的表 5 为您提供了 7 个参数。ETRF2000 是通常用于 ETRS89 的参考框架。例如。2013 年 T1(或 dx)将为 52.1 + (13years x 0.1) = 53.4mm 或 0.0534m。 请参阅此链接的表 5 http://etrs89.ensg.ign.fr/memo-V8.pdf
您需要查找 Helmert 变换公式,然后输入您的 3 个平移、比例因子和 3 个旋转。
HTH史蒂夫
(编辑:哎呀。这将为您提供长/纬度/高度的 ETRS89,您仍需要将其投影到 UTM)
我使用https://github.com/dvdoug/PHPCoord取得了成功
测试文件有一些例子: https ://github.com/dvdoug/PHPCoord/blob/master/tests/LatLngTest.php#L122