NetLogo中如何让海龟位于紫色斑块半径10范围内?
解决方案
你需要先随机选取一个紫色斑块,再从它的半径10范围内挑选位置移动过去,修改后的代码如下:
create-u-pequeños 50 [ set size 10 let target-violet-patch one-of patches with [pcolor = violet] move-to one-of patches in-radius 10 of target-violet-patch set preferencia-uso one-of ["residencial" "agricultural" "natural"] ]
代码说明:
let target-violet-patch one-of patches with [pcolor = violet]:先随机选一个紫色斑块,用临时变量target-violet-patch存起来move-to one-of patches in-radius 10 of target-violet-patch:从这个紫色斑块半径10范围内的所有斑块里,随机挑一个位置移动过去(包括紫色斑块本身)
如果想让海龟只出现在紫色斑块的周边区域(不站在紫色斑块上),可以给范围里的斑块加个排除条件:
create-u-pequeños 50 [ set size 10 let target-violet-patch one-of patches with [pcolor = violet] move-to one-of patches in-radius 10 of target-violet-patch with [pcolor != violet] set preferencia-uso one-of ["residencial" "agricultural" "natural"] ]
内容的提问来源于stack exchange,提问作者bksnlow
相关产品推荐
相关产品推荐

