1
ipconfiger 2013-05-30 16:34:36 +08:00 2
把线路离散成N个点,然后把当前位置的点和所有点计算距离(GIS是有现成的方法的),然后如果最近的一个点,超过某阈(yù)值的时候就可以报警了。如果要提高性能,在第一次遍历所有点取值后,定时检测当前点的位置只需要和上次最近点附近一段的点对比就可以了。最重要的是,点击右边的感谢按钮可以保证算法绝对正确
|
2
tearsinchina OP @ipconfiger 有现成的sample吗?
|
3
for4 2013-05-30 17:00:16 +08:00
@ipconfiger haha, 感谢拼音注解~~~
|
4
raquelken 2013-05-30 17:09:21 +08:00
@ipconfiger 在一段很长的直线路上,会不停的报警
|
5
xiangjian 2013-05-30 19:53:47 +08:00
没这么复杂吧,GIS里的缓冲区分析,先生成线路合理的缓冲去,点到缓冲区外就报警。 空间数据库 或GIS 软件基本都提供这个功能
|
7
Ludwiyk 2013-05-30 22:34:48 +08:00
笨方法:根据当前对象所在点的经纬度,算出离当前点最近的路,近而算出垂直距离,看是否在允许的偏离范围内,但是地图是有偏差值的,得考虑进去
|