Java 如何将地理坐标系转换为投影坐标系
时间: 2023-09-27 20:06:23 浏览: 243
Java可以使用开源库Proj4J来进行地理坐标系和投影坐标系之间的转换。以下是一个简单的示例代码:
```java
// 定义地理坐标系
CoordinateReferenceSystem sourceCRS = CRS.decode("EPSG:4326");
// 定义投影坐标系
CoordinateReferenceSystem targetCRS = CRS.decode("EPSG:3857");
// 定义转换器
MathTransform transform = CRS.findMathTransform(sourceCRS, targetCRS);
// 定义地理坐标
double lat = 31.2304;
double lon = 121.4737;
DirectPosition2D srcDirectPosition = new DirectPosition2D(sourceCRS, lon, lat);
// 进行转换
DirectPosition2D targetDirectPosition = new DirectPosition2D();
transform.transform(srcDirectPosition, targetDirectPosition);
// 输出投影坐标
System.out.println(targetDirectPosition.getX() + ", " + targetDirectPosition.getY());
```
在上面的示例中,我们先定义了地理坐标系和投影坐标系,然后通过Proj4J库的`CRS.findMathTransform()`方法获取了一个转换器,最后将地理坐标转换为投影坐标并输出结果。
阅读全文