我正在做一个单车道道路与两车道道路合并的模拟,所有道路都朝同一个方向。未合并的汽车(cars1)检查半径为2的合并汽车,以查看它们是否需要转换到左侧车道,如果需要,汽车将检查左侧车道是否安全。
ask cars1[
if (not any? turtles-at -2 4) and (not any? turtles-at -1 4)
and (not any? turtles-at 0 4) and (not any? turtles-at 1 4)
and (not any? turtles-at 2 4) and (not any? turtles-at 3 4)
and (any? merging-cars in-radius 3)
[ set ycor 2]]
如果最近车道上的cars1转向左侧车道不安全,我会尝试让合并的车辆停下来。
ask merging-cars[
loop[
if[any? cars1 in-radius 2]
[stop]
]]
这就是不起作用的代码。我还没有想出一种方法来让合并的汽车在不安全的时候停下来,在安全的时候离开。
谢谢
发布于 2017-04-25 09:17:06
为了让你走上正确的方向,看看有什么不好吗?文档,并请注意,您可以使用以下命令合并要检查的角度以及向右或向左:
not any? turtles-on patch-right-and-ahead 60 2
这是在说...检查这个乌龟前面的右2补丁的60度角。
https://stackoverflow.com/questions/43577878
复制相似问题