我们正在使用 Elastic Search 中的 shape 数据类型索引 geo-json 多边形。这些多边形是从外部来源提供给我们的。
在索引时,一些多边形会出现以下错误信息。
这篇Stack Overflow帖子似乎表明正确的方法是将自相交的多边形分割成几个多边形,因此上述的多边形将被分割成2个三角形。然而,上述帖子还揭示了Lucene中的一个错误,因此我们有些困惑该期望什么。
因此,我们的问题是,在Elasticsearch中索引自相交的多边形的建议方法是什么?
提前致谢!
我们认为问题与自相交的多边形有关。根据例如 https://geojsonlint.com 的标准,这些多边形似乎是有效的。下面是一个自相交多边形的示例:"无法对形状 [[12.775555, 61.54487] [12.797356, 61.53186] [12.795639, 61.549286] [12.832375, 61.54536] [12.775555, 61.54487] ] 进行分割。可能检测到畸形形状。"
{
"type": "Polygon",
"coordinates": [
[
[
12.775554656982422,
61.54486837329203
],
[
12.797355651855469,
61.53186079051699
],
[
12.795639038085938,
61.54928480379444
],
[
12.832374572753906,
61.54535911881558
],
[
12.775554656982422,
61.54486837329203
]
]
]
}
这篇Stack Overflow帖子似乎表明正确的方法是将自相交的多边形分割成几个多边形,因此上述的多边形将被分割成2个三角形。然而,上述帖子还揭示了Lucene中的一个错误,因此我们有些困惑该期望什么。
因此,我们的问题是,在Elasticsearch中索引自相交的多边形的建议方法是什么?
提前致谢!