8

我有一个 json 对象作为

区域 : CIRCLE (28.625360369528934 77.2227479486792, 3135.6)

如何使用 WKTreader 解析它?

4

2 回答 2

4

你需要回到写它的人那里,解释CIRCLE它不是WKT 标准的一部分,他们应该停止生产它。

那么你最好的选择是生成一个具有很多(200)条边的多边形,它可能使用 JTS 缓冲区方法。

Point p = gFactory.createPoint(28.625360369528934 77.2227479486792);
Polygon circle = p.buffer( 3135.6 );
于 2017-01-20T17:23:35.500 回答
3

另一种选择是接受中心点半径。这将允许您确定另一个地理形状是否在“区域”内或附近。

{
   "wkt": "POINT(28.625360369528934 77.2227479486792)",
   "radius": 50
}

这比生成数百个点稍微优雅一些​​,因为你有一个完全无损的圆关节。唯一最好转换为多边形的情况是共享不是一个完美的圆形(那么这种方法将是“有损的”)。

于 2019-10-17T10:34:12.667 回答