指定操作区域,并验证某个位置是否在此区域内

本文关键字:区域 是否 位置 验证 操作 | 更新日期: 2023-09-27 18:29:51

我对移动开发还很陌生,所以请原谅这个看似微不足道的问题。我想指定一个组织的操作区域,以及移动应用程序用户(android、iphone等)输入的位置(纬度、经度)是否属于操作区域。我需要一些高层次的想法。我想到的一种方法是在数据库中收集一组区域(由lat、long对和半径指定),可以按不同的管理级别进行排序,然后根据服务器上的数据验证用户的位置(lat、long)。这是正确的方法还是其他方法?欢迎任何导游。提前谢谢。

指定操作区域,并验证某个位置是否在此区域内

我认为您的主要目标是:如何定义操作区域?如果你采用"圆"的定义(即纬度、长度和半径),你会以一些重叠的区域结束,很难决定正确的行为。我更喜欢"平方"的定义(即左上角和右下角),然后你可以根据服务器的数据检查来自移动设备的坐标,并确定正确的区域。

如果你必须保持"圆"的定义,你必须:

  1. 计算来自移动设备的坐标与存储在数据库中的操作区域中心之间的距离
  2. 验证距离是否低于半径

可以计算距离:dist(A,C)=''sqrt{(xA-xC)^2+(yA-yC)^2}其中xA和yA是移动坐标,xC和yC是您所在区域的纬度和经度