在netlogo上,如何让乌龟设置随机ycor,但仍然小于1

时间:2014-01-26 20:41:02

标签: netlogo

在Netlogo上,我想创建海龟和setxy到random-xcor和random-ycor,但仅限于从1的ycor下占据屏幕的绿色区域。

1 个答案:

答案 0 :(得分:3)

如果您的主要目标是在绿色区域的随机位置开始海龟,您可以这样做:

create-turtles 100 [ move-to one-of patches with [ pcolor = green ] ]

one-of patches with [ pcolor = green ]只是随机获得绿色补丁。然后,代码将新创建的乌龟移动到随机选择的补丁。请注意,使用此方法将在修补程序的中心创建海龟。我建议使用这种方法。

如果您的目标确实是将其设置为最大ycor为1的随机位置,那么让我们首先定义一个函数,该函数从两个数字之间给出一个随机数

to-report random-between [ min-num max-num ]
    report random-float (max-num - min-num) + min-num
end

现在,random-ycor执行相同的操作random-between (min-pycor - .5) (max-pycor + .5).5就在那里,因此数字可以位于最顶部或最底部。您可以使用相同的技术,但只需将max-num替换为1:

create-turtles 100 [ setxy random-xcor random-between (min-pycor - .5) 1 ]
相关问题