在demo中设置区域单方向,可以通过把该区域设为不可走,然后在区域两侧添加单向link的方式,但是这种方式最终的效果感觉像是搭建了一个桥梁,最终效果不太理想,可以看下图。
通过阅读源码发现,每个poly有个nei的属性,其代表的是多边形每个顶点所对应的边儿,如果对应的这个边儿等于0,表示所在边儿是不连通的。根据这个思路设计如下图区域只能是从左向右的通行方向,首先找到该区域的多边形,然后找到nei对应的多边形,计算设计方向和实际方向是否同向,不同向的直接将nei对应的值改为0即可。
最终可以看下运行效果