如何在NetLogo的多个位置繁殖多只海龟?
我正在创建一个模拟,该区域周围有多个蜂巢,这些蜂巢由棕色斑块表示。我想多个海龟产卵后,所有的蜂巢设置,但当使用我的代码,它只能在一个蜂巢海龟产卵。我一直在尝试使用预设坐标如何在NetLogo的多个位置繁殖多只海龟?,netlogo,Netlogo,我正在创建一个模拟,该区域周围有多个蜂巢,这些蜂巢由棕色斑块表示。我想多个海龟产卵后,所有的蜂巢设置,但当使用我的代码,它只能在一个蜂巢海龟产卵。我一直在尝试使用预设坐标 to setup-bees create-turtles number-of-bees ask turtles [ setxy 0 0 ] ask turtles [ set pcolor brown ] ask turtles [ set size 1.5 ] ask turtles [ set
to setup-bees
create-turtles number-of-bees
ask turtles [ setxy 0 0 ]
ask turtles [ set pcolor brown ]
ask turtles [ set size 1.5 ]
ask turtles [ set color red]
ask turtles [
set xy_list (list)
]
create-turtles number-of-bees
ask turtles [ setxy -80 0 ]
ask turtles [ set pcolor brown ]
ask turtles [ set size 1.5 ]
ask turtles [ set color red]
ask turtles [
set xy_list (list)
]
create-turtles number-of-bees
ask turtles [ setxy 80 0 ]
ask turtles [ set pcolor brown ]
ask turtles [ set size 1.5 ]
ask turtles [ set color red]
ask turtles [
set xy_list (list)
]
结束
这是我所有的,只在最后一个地点产卵。任何帮助都会很好,谢谢。问题是,每个
询问海龟
都适用于迄今为止创建的所有海龟。所以,真正发生的事情是,最初创建的第一批海龟被放置在0,0,然后被要求与第二批海龟一起移动到-80 0,然后被要求与第三批海龟一起移动到80 0。您需要的是将setxy
和其他请求仅应用于正在创建的批。那看起来像
turtles-own [xy_list]
globals [number-of-bees]
to setup-bees
clear-all
set number-of-bees 10
create-turtles number-of-bees [
setxy 0 0
set pcolor brown
set size 1.5
set color red
set xy_list (list)
]
create-turtles number-of-bees [
setxy -80 0
set pcolor brown
set size 1.5
set color red
set xy_list (list)
]
create-turtles number-of-bees [
setxy 80 0
set pcolor brown
set size 1.5
set color red
set xy_list (list)
]
end
每个创建海龟
后括号中的命令仅将应用于正在创建的海龟。因此,你可以让蜜蜂在不同的蜂巢里,有不同的颜色或大小
一个问题和一个观察。我假设你们世界的大小可以容纳+80的x坐标?而set xy\u list(list)
可以是set xy\u list[]
顺便说一句,另一种方法是让蜂巢发芽。例如:
ask patch 0 0 [
set pcolor brown
sprout number-of-bees
[
set size 1.5
set color red
set xy_list []
]
]