用于定义地理围栏并查看点是否在其内部/外部的算法

问题描述 投票:7回答:4

我正在寻找一种算法,我可以创建地理围栏并检查设备是否正在进入/离开围栏。我已经看过多边形算法(光线投射和绕组数),但是有没有算法可以应用于圆形和任何不规则形状?重要的制约因素是时间效率。

谢谢。

algorithm math geo point-in-polygon geofencing
4个回答
3
投票

好的圆圈很容易(至少如果你假设一个局部平坦的表面) - 只是一个点的绝对距离。

如果你需要速度的常规方法是级联,首先检查一个圆,或者围绕点检查一个正方形,然后是一个凸多边形,然后在必要时检查更详细的多边形。

如何定义不规则形状 - 如果它不是多边形?

ps见How to test if a point is inside of a convex polygon in 2D integer coordinates?


3
投票

以下是易于理解的c代码算法:

http://alienryderflex.com/polygon/


0
投票

看看四叉树,空间索引,四叉树和r树。


0
投票

Winding Number Method

但最重要的是,出于几何正确性和效率的原因,绕组数算法应始终优先用于确定多边形中点的包含。

© www.soinside.com 2019 - 2024. All rights reserved.