Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 如何为框搜索编码纬度/经度?_Algorithm_Google App Engine_Geolocation - Fatal编程技术网

Algorithm 如何为框搜索编码纬度/经度?

Algorithm 如何为框搜索编码纬度/经度?,algorithm,google-app-engine,geolocation,Algorithm,Google App Engine,Geolocation,我正在Google App Engine上开发一个应用程序,需要找到一个框中的所有点 基本的SQL搜索是: 最小纬度纬度和最小经度经度 但是,这个请求在Google App Engine上既低效又被禁止(您不能在两个不同的字段上使用不等式) 所以,我用层次顺序编码纬度/经度 但使用Geohash有一些问题: 是的,它会找到框中的所有点,但也会找到框外的点 让我们举个例子: 左下角为(1,1)->geohash1=s00twy01mtw0的框 和右上角(10,10)->geohash2=s1z0g

我正在Google App Engine上开发一个应用程序,需要找到一个框中的所有点

基本的SQL搜索是:

最小纬度<纬度和最大纬度>纬度和最小经度<经度和最大经度>经度

但是,这个请求在Google App Engine上既低效又被禁止(您不能在两个不同的字段上使用不等式)

所以,我用层次顺序编码纬度/经度

但使用Geohash有一些问题: 是的,它会找到框中的所有点,但也会找到框外的点

让我们举个例子:
左下角为(1,1)->geohash1=s00twy01mtw0的框
和右上角(10,10)->geohash2=s1z0gs3y0zh7
将接受点P,如(2,11)->geohashP=s0rg6k1fye42
因为geohash1 即使P不在框中

有没有关于一种有效的方法来获取框中的所有分数(并且只有这些分数)的想法?

我现在正在考虑在请求后对额外的错误点进行后处理。

您可以使用理论将矩形的四个坐标映射到单个值,但我不确定是否(很容易)可以对这些值执行包含测试。

您可以使用理论将矩形的四个坐标映射到单个值,但我不确定是否可以(轻松)对这些值执行包含测试。

不要重新发明轮子!空间查询是一个棘手的问题,但已经有几个第三方库解决了这个问题。其中最好的可能是。不要重新发明轮子!空间查询是一个棘手的问题,但已经有几个第三方库解决了这个问题。其中最好的可能就是由Geomedel来完成这项工作

我将python库移植到java中


对于感兴趣的用户,请勾选:

Geomedel完成此项工作

我将python库移植到java中


对于感兴趣的用户,请查看:

,这还有一个额外的好处,就是可以用于上面提到的谷歌应用程序引擎:)谢谢。有没有想到一个与Google App Engine兼容的java第三方库?以上所有内容。我见过的所有库都涉及递归空间划分;到目前为止,geomodel似乎做得最好。这还有一个额外的好处,就是被用于上面提到的谷歌应用程序引擎:)谢谢。有没有想到一个与Google App Engine兼容的java第三方库?以上所有内容。我见过的所有库都涉及递归空间划分;到目前为止,格莫代尔似乎做得最好。