从嵌套的ask中设置turtle的变量
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从嵌套的ask中设置turtle的变量相关的知识,希望对你有一定的参考价值。
我是netlogo的新手,所以我的问题可能很愚蠢。我想将两个或更多只乌龟的变量conv设置为true,如果它们彼此面对的话。所以我遍布所有的海龟,并问他们的视锥是否有一只乌龟。如果有一些,我问那些海龟如果对他们来说是假的,如果我自己在他们的视锥中。如果是这种情况,我需要为彼此面对的两只乌龟设置conv true。下面的代码显然不起作用,但我不知道如何以不同的方式编写它。
ask turtles[
ask other turtles in-cone 4 90[
if (not conv) and (member? myself other turtles in-cone 4 90)[
set conv true
set [conv] of myself true]
]
]
答案
关键字set
指示乌龟将自己的变量(或全局变量)设置为指定的值。这意味着您需要更改为要更改变量的乌龟的视角。这是一个完整的模型,可以改变观点。
to testme
clear-all
create-turtles 100
[ setxy random-xcor random-ycor
set color blue
]
ask turtles
[ ask other turtles in-cone 4 90
[ if member? myself other turtles in-cone 4 90
[ set color red
ask myself [ set color red ]
]
]
]
end
基本上,你需要set [conv] of myself true]
,而不是ask myself [set conv true]
。
以上是关于从嵌套的ask中设置turtle的变量的主要内容,如果未能解决你的问题,请参考以下文章