从Spatial4j Geocircle对象获取JTS几何体的最佳方式
问题描述:
我有一个应用程序,它存储由JTS Geometry对象(Polygon)给出的几何体,但JTS不使用测地上下文,我需要存储绘制的圆在测地空间。从Spatial4j Geocircle对象获取JTS几何体的最佳方式
然后我创建一个测地圆(用spatial4j库创建),并需要将其转换为jts几何。
SpatialContext.GEO.shapeFactory.circle(lng1, lat1, DistanceUtils.dist2Degrees(circleRadius/1000, DistanceUtils.EARTH_MEAN_RADIUS_KM))
所以我需要得到该测地圆的多边形表示(最准确可能)。我怎样才能做到这一点?。还有另一种方法可以做到吗?
答
使用JtsSpatialContext(JTS 1.15.0):
Circle circle = SpatialContext.GEO.getShapeFactory()
.circle(lon, lat, DistanceUtils.dist2Degrees(circleRadius/1000, DistanceUtils.EARTH_MEAN_RADIUS_KM));
Geometry circleGeometry = JtsSpatialContext.GEO.getShapeFactory()
.getGeometryFrom(circle);