我有以下OpenGis数据,我想将其转换为纬度/经度坐标(由Google地图使用)。
<address xmlns:gml="http://www.opengis.net/gml">
<gml:Point srsName="urn:ogc:def:crs:EPSG::28992">
<gml:pos>142629.0 523546.0</gml:pos>
</gml:Point>
</address>
在EPSG Registry上,我找到了EPSG:28992的原点位置。
Latitude of natural origin 52°09'22.178"N
Longitude of natural origin 5°23'15.5"E
Scale factor at natural origin 0.9999079 unity
False easting 155000 metre
False northing 463000 metre
我尝试使用proj4js,但无法弄清楚如何将其放在投影中以及如何获得所需的输出。
我也尝试过自己计算。但是我不知道我在这里做什么,没有什么真正有意义的:(。
最佳答案
这是操作方法。通常,如果Proj4js已包含该投影,则可以从一个投影转换为另一投影,如下所示:
proj4('EPSG:900913', 'EPSG:4326', [20.0, 30.0]);
但是,EPSG:28992不包含在标准库中。为此,您可以通过添加新定义来添加它:
proj4.defs(
"EPSG:28992",
"+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +towgs84=565.040,49.910,465.840,-0.40939,0.35971,-1.86849,4.0772 +units=m +no_defs"
);
然后,您可以像这样进行转换:
proj4('EPSG:28992', 'EPSG:4326', [142629.0, 523546.0]);
哪个产量
[5.2041980699764325, 52.69918555556015]
On Google Maps
关于node.js - 如何将EPSG坐标转换为纬度/经度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42216694/