Installation 如何在netlogo中随机设置补丁,但不让它们相互接触?
我正在尝试设置我的补丁,使它们不会相互接触,而是随机放置 现在,使用下面的代码,他们按照我想要的比例设置颜色,但不是随机放置:Installation 如何在netlogo中随机设置补丁,但不让它们相互接触?,installation,netlogo,patch,Installation,Netlogo,Patch,我正在尝试设置我的补丁,使它们不会相互接触,而是随机放置 现在,使用下面的代码,他们按照我想要的比例设置颜色,但不是随机放置: to setup-patches ask n-of number-of-patches patches [ ifelse neighbors4 = green [ set pcolor black ] [ set quality (random 10) set pcolor scale-color green quality 0 10]
to setup-patches
ask n-of number-of-patches patches
[ ifelse neighbors4 = green
[ set pcolor black ]
[ set quality (random 10)
set pcolor scale-color green quality 0 10] ]
有没有关于如何做到这一点的帮助?我认为您需要使用
Any?
和shade of?
原语,让每个补丁检查它们的邻居是否不仅有绿色,还有绿色。另外请注意,如果您使用random 10
设置质量,那么补丁的质量将介于0到9之间,因为NetLogo的random
不包括在内。因此,为了可视化,您可能希望以稍微不同的方式缩放质量(如下例所示)
给你一些类似于:
patches-own [ quality ]
to setup
ca
ask n-of 400 patches [
ifelse any? neighbors4 with [ shade-of? pcolor green ] [
set pcolor black
] [
set quality 2 + random 7
set pcolor scale-color green quality 0 10]
]
reset-ticks
end