我刚刚开始使用netlogo,我正试图从OOP过渡过来,所以如果我的编码范例是我问题的根源,我道歉。
问题
在ask turtle过程中,我孵化了一只乌龟。我想创建一个链接到孵化出的乌龟和孵化它的乌龟。我不需要记住家庭关系。
试图解决这个问题
ask turtles [
setxy ( mean [pxcor] of my-territory ) ( mean [pycor] of my-territory )
show my-territory
let parent-node [hatch 1]
[ set color red
if parent-node != nobody
[ create-link-with parent-node [ set color green ]
move-to old-node ;; position the new node near its partner
fd 8
]]]但是阴影给了我一个错误,因为它需要一个字面值。1是字面量,对吗?思考如何解决这个问题的最佳方式是什么?
发布于 2018-06-01 00:30:59
看起来你想要
if parent-node != nobody [
ask parent-node [
hatch 1 [create-link-with myself init-child]
]
]init-child保存初始化的位置。
发布于 2018-06-01 00:41:26
我真的不太清楚你想做什么。什么是父节点?这是正在进行阴影的节点吗?如果是这样的话,你根本不需要它,因为ask turtles会把你放到海龟上下文中(即执行命令的海龟是父节点)。什么是旧节点?无论如何,hatch都会将新的海龟放在孵化海龟的相同位置。
如果你要做的只是让一只海龟孵化另一只海龟,将孵化器与哈奇联系起来,然后让孩子向前移动,试试这个:
ask turtles
[ setxy ( mean [pxcor] of my-territory ) ( mean [pycor] of my-territory )
hatch 1
[ set color red
create-link-with myself [ set color green ]
forward 8
]
]请注意,myself指的是执行请求的任何事物。
https://stackoverflow.com/questions/50625788
复制相似问题