我需要找到一种方法,使用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+(13年x 0.1)=53.4mm或0.0534m。请参阅此链接的表5http://etrs89.ensg.ign.fr/memo-V8.pdf
您需要查找Helmert变换公式,然后输入您的3个平移、比例因子和3个旋转。
HTHSteve
(编辑:糟糕。这将给你ETRS89的长/宽/高,你仍然需要将其投影到UTM)
我使用https://github.com/dvdoug/PHPCoord
测试文件有一些示例:https://github.com/dvdoug/PHPCoord/blob/master/tests/LatLngTest.php#L122