gpt4 book ai didi

simulation - 如何在 Netlogo 中随时间改变海龟的颜色?

转载 作者:行者123 更新时间:2023-12-04 10:53:42 24 4
gpt4 key购买 nike

在我正在进行的模拟中,我有红海龟。
我希望它们一开始是黄色的,然后在 10 个刻度后变成橙色,然后在其他 10 个刻度后变成红色。
我怎么能这样做?

to ignite
ask fires [
if count neighbors > 0 [
ask one-of neighbors with [pcolor = white or pcolor = green ]
[
if count fires-here < 6 [
sprout-fires 3
[ set color red set size 3 ]
]
]
]
]
end

最佳答案

请注意,您的设置过程中有 tick。这需要在你的 go 程序中。 setup 用于模拟开始时的所有内容,而 go 是每个时间步发生的事情。命令 tick 增加时间步长的计数器,报告器 ticks 读取时间步长计数器。

如果要根据乌龟存活的时间改变它的颜色,首先需要让乌龟知道它什么时候“出生”,因此为此创建一个变量并存储当前值 ticks在创建过程中的那个变量中。

fires-own
[ state ; you have this already
birth-tick ; this is the new one
]

改变这个:
      sprout-fires 3
[ set color red set size 3 set state "live"]

对此(请注意,间距对 NetLogo 无关紧要,但有助于提高可读性)
      sprout-fires 3
[ set color red
set size 3
set state "live"
set birth-tick ticks
]

所以这就创造了出生时间。现在,在您的 go 过程(您没有显示)中,您希望所有 10 个刻度的海龟都改变颜色。一种方法是:
ask fires with [ birth-tick = ticks - 10 ] [ set color orange ]

关于simulation - 如何在 Netlogo 中随时间改变海龟的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59336356/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com