如何将投影EPSG:3857转换为EPSG:java中的4326(地理空间)

问题描述 投票:-1回答:1

有没有办法将EPSG:3857投影转换为EPSG:java中的4326?我正在使用esri java sdk。我浏览了esri skd文档,但找不到将EPSG转换为3857的方法:EPSG:4326。有办法吗?

我有这样的网络墨卡托:qazxsw poi

并拥有像这样的Point property = new Point(1.7040237624799997e7,-3099509.4953500014, SpatialReferences.getWebMercator());的WSG84

我需要合并它们,因为这些点具有不同的空间参考,我无法显示地图属性。

java geospatial esri map-projections epsg
1个回答
1
投票

我假设您正在使用ArcObjects SDK for Java?然后,下面的代码应该可以工作,因为您的Point类正在根据esri java doc实现IGeometry接口

Point point1 = new Point(153.089361, -26.802295, SpatialReferences.getWgs84());

https://desktop.arcgis.com/en/arcobjects/latest/java/api/arcobjects/com/esri/arcgis/geometry/IGeometry.html

因为您的Point构造函数看起来像是使用了一个较新的Esri SDK,如ArcGIS Pro SDK或Runtime SDK,我也为它们添加了一个解决方案:

Point property = new Point(1.7040237624799997e7,-3099509.4953500014, 
                           spatialReferences.getWebMercator());
Point reprojected = property.project(SpatialReferences.getWgs84());

根据Point originalPoint = new Point(1.7040237624799997e7,-3099509.4953500014, spatialReferences.getWebMercator()); Point projectedPoint = (Point) GeometryEngine.project(originalPoint, SpatialReference.create(4326));

© www.soinside.com 2019 - 2024. All rights reserved.