如何检测邻居补丁协调器(位置)



如何检测海龟所在补丁周围邻居补丁的协调器(位置)?比如:

patches with [(pcolor = red) and (any? turtles-on neighbors)]

[patch-here] of neighbors with [(pcolor = red)]

我想把海龟移到相邻的红色斑块上。所以我需要先找到相邻的红色补丁。谢谢。


可以在这里做你想做的(http://ccl.northwestern.edu/netlogo/docs/dictionary.html#one-of)。像这样:

to move-turtle
    let destination one-of neighbors with [ pcolor = red ]
    if (destination != NOBODY) [
        move-to destination
    ]
end

要弄清楚你想要什么有点困难,但我认为你建议使用坐标而不是补丁。如果是这样,除非有充分的理由,否则不要这样做。在这种情况下,只需

to move ;; turtle proc
  let %candidates neighbors with [pcolor = red]
  if (any? %candidates) [
    move-to one-of %candidates
  ]
end

最新更新