我是移动开发的新手,所以请原谅这个看似微不足道的问题。我想指定组织的操作区域以及移动应用程序用户(android、iphone 等)输入的位置(纬度、经度)是否属于操作区域。我需要一些高层次的想法。我想到的一种方法是在数据库中收集一组区域(由纬度、经度和半径指定),可以按不同的管理级别进行排序,然后验证用户的位置(纬度、经度)这个数据来自服务器。这是正确的方法还是有其他方法?欢迎任何指南。提前致谢。
最佳答案
我认为您的主要目标是:如何定义操作区域? 如果您使用“圆”定义(即纬度、经度和半径),您将以一些重叠区域结束,并且可能很难确定正确的行为。 我更喜欢“平方”定义(即左上角和右下角),之后您可以检查来自移动设备的坐标与来自服务器的数据,并确定正确的区域。
如果你必须维护“圆”的定义,你必须:
- 计算来自手机的坐标与存储在数据库中的操作区域中心之间的距离
- 验证距离小于半径
可以计算距离:dist(A,C)=\sqrt{(xA-xC)^2+(yA-yC)^2} 其中 xA 和 yA 是移动坐标,xC 和 yC 是您所在区域的纬度和经度
关于c# - 指定操作区域并验证位置是否在该区域内,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34720595/