0

我想在android中创建一个应用程序,用户可以在其中输入两个地理点(纬度和经度),并通过这两个点在数据库表(mysql)中进行查询,其中已经存储了人们的gps位置信息(纬度和经度)通过使用上述查询,我​​想在输入的起点和终点之间搜索人。

例如:用户 A 输入了起点:德里和终点:孟买,现在他将点击搜索按钮,所有的人都会来到孟买和德里之间的 gps 位置。如果可以的话。所有人员都将显示为列表视图。

希望我已经解释得很好。请有人告诉我如何实现这一目标?我使用 php mysql 作为后端。

4

1 回答 1

1

如果你想知道谁在由两点分隔的正方形区域中,你必须检查人的位置是否在两个点的纬度和经度之间。例子:

//Delimiting points:
    Dehli:    28°36′36″N 77°13′48″E
    Mumbai:   18°58′30″N 72°49′33″E

//People:
    Person A: 28°40′52″N 73°21′47″E
    Person B: 22°03′44″N 75°56′11″E

Person A is OUTSIDE the square area between Dehli and Mumbai because the latitude
he is on is greater than the greatest latitude of both points:
    Mumbai lat. < Dehli lat. < Person A lat.

Person B is INSIDE the square area between Dehli and Mumbai because the latitude
and longitude he is on is between both points latitude and longitude:
    Mumbai lat. < Person B lat. < Dehli lat.
    Mumbai lon. < Person B lon. < Dehli lon.

如果你想计算距离,你可以依靠大圆公式。这可用于在 X 英里半径范围内寻找人员。

于 2012-10-31T08:35:33.893 回答