7

我应该如何创建一个 GQL 查询,该查询根据其 GeoPt 属性返回最近的实体(从我当前的位置)?我是否应该创建一个“距离”函数来计算一组距离相当近的实体?

提前谢谢!

4

4 回答 4

9

App Engine 没有特别处理 GeoPt 属性 - 它没有内置的空间索引。但是,有许多第三方库添加了对空间索引的支持。最好的(在我看来)是geomodel

于 2009-06-24T11:55:34.943 回答
4

您可以将位置存储在 App Engine 中的四叉树结构中。

这是如何完成的一种描述:Google App Engine 上的地理查询

于 2009-06-24T08:46:44.763 回答
2

我想我会取得某种挖掘机成就,但这里是:

我正在寻找这个问题的解决方案,并遇到了这个谷歌的官方文档: https ://cloud.google.com/appengine/docs/java/search/query_strings#Java_Queries_on_geopoint_fields

我真的认为谷歌应该对此发出更多的声音。我觉得很奇怪,他们有一个关于 Python 的课程来做同样的事情,但没有说明如何为 Java 做这件事。

于 2015-03-06T02:55:10.980 回答
0

geohash 在不同的哈希中设置了非常接近的点,因此应该首选另一个或下一层。您可以进行半径、二次内部/外部形状测试,甚至任何数学形状,并测试该点是否在我们的外部形状内。

于 2009-07-03T18:26:09.210 回答