(Elasticsearch)有没有办法在地理边界框查询的边缘添加±范围?

时间:2016-05-16 10:52:59

标签: elasticsearch geo

我希望能够在elasticsearch中进行地理边界框查询,并且有一些误差(大多数情况下最大值和最小值都在同一位置给出)。理想情况下,这会为矩形提供漂亮的圆角,每个角上都有一个四分之一圈,但只需在右上角添加x英里并从左下角减去它们即可。

我可以通过将距离转换为lat long的不同来实现这一点,但这很复杂,因为映射会根据实际纬度而变化,所以我宁愿不这样做。

提前感谢任何建议。

1 个答案:

答案 0 :(得分:0)

虽然您无法定义完美的圆角矩形,但您可以使用Geo Polygon Query而不是边界框来近似它,您只需要以编程方式计算圆角上的某些点;例如,假设你的左上角有坐标x0,y0:

enter image description here

等等其他角落,你想要的中间点数量很多。

然而,这似乎有点矫枉过正,你可能只想扩大你的边界框。

更新:另一种方法是通过Scripting实现自定义功能,因为GeoPoint的纬度和经度可以是accessed through scripting