【问题标题】:NetLogo Turtle positionNetLogo 海龟位置
【发布时间】:2013-10-26 21:54:20
【问题描述】:

我是 NetLogo 编程的新手,我需要一点帮助。我有一个任务,我做了大部分。剩下要做的就是让机器人在迷宫中行走。机器人只能在黑色斑块上行走(紫色斑块代表障碍物)。

所以,我需要帮助的是将机器人定位在迷宫的中心 - 我必须使用“patch-here”(...我在程序“stvori-agenta”中做的有点不同)并将机器人所在的补丁标记为黑色。所以,之后我可以只在一个黑色的补丁上编写机器人运动的程序。

代码如下:

breed [robots robot]
to crtaj-zidove  
ask patches with
[
  ( pxcor = max-pxcor) 
    or (pxcor = min-pxcor)
    or ( pycor = max-pycor)
     or (pycor = min-pycor) ]  
[ set pcolor violet]
end

to labirint
ask n-of 15 patches with [ pcolor != violet ] [
set pcolor violet]
end

to stvori-agenta 
set-default-shape robots "robot" 
ask patch 5 5 [ sprout-robots 1 ] 
ask turtles [          
set heading 0
set color grey      
]
end

to setup
clear-all
crtaj-zidove
labirint
stvori-agenta
end

【问题讨论】:

    标签: netlogo


    【解决方案1】:

    这将使机器人转动它站在黑色的补丁:

    ask robots [ set pcolor black ]
    

    你说你必须使用patch-here。这实际上不是必需的,因为海龟可以直接访问它们所站立的斑块。但你也可以这样写:

    ask robots [ ask patch-here [ set pcolor black ] ]
    

    它做同样的事情。

    【讨论】: