Netlogo 海龟、斑块及其从一个斑块到下一个斑块的顺序移动
Platfrom:NetLogoNetlogo 海龟、斑块及其从一个斑块到下一个斑块的顺序移动,netlogo,Netlogo,Platfrom:NetLogo 问题: 我想把我的旗帜移到3点 A(-12.8) B(-5 12) C(6 4) -在移动该点时,绘图能量/时间随机减少 -当到达C时,标志将消失 我之前问过,找到了搬家的解决方案。(当乌龟到达2点时,它不会停止)-线路1- breed [cities city] breed [flag person] flag-own [target] to setup clear-all create-flag 1 [ set size 6 s
- 问题:
- A(-12.8)
- B(-5 12)
- C(6 4)
breed [cities city]
breed [flag person]
flag-own [target]
to setup
clear-all
create-flag 1
[ set size 6
set shape "by"
setxy -5 3
set target patch -10 5
face target
]
< other commands >
end
to go
ask flag-on patch -10 5
[ set target patch <next place you want it to go>
face target
]
ask flag with [ shape = "by" ]
[ forward 1 ]
end
繁殖[城市]
品种[旗手]
旗自己[目标]
设置
清除所有
创建标志1
[套装尺寸6
“按”设置形状
setxy-5 3
设定目标补丁-10 5
面对目标
]
<其他命令>
终止
外带
补丁上的询问标志-10 5
[设置目标补丁
面对目标
]
使用[shape=“by”]
[转发1]
终止
人们建议将此代码用于瞄准任何目标
to go
ask people [
;; if at target, choose a new random target
if distance target = 0
[ set target one-of houses
face target ]
;; move towards target. once the distance is less than 1,
;; use move-to to land exactly on the target.
ifelse distance target < 1
[ move-to target ]
[ fd 1 ]
]
tick
end
要走了
问别人[
;如果在目标位置,则选择一个新的随机目标
如果距离目标=0
[设定一个房屋的目标
面对目标]
向目标移动。一旦距离小于1,
使用“移动”精确地落在目标上。
ifelse距离目标<1
[移动到目标]
[fd 1]
]
打上钩
终止
在这个代码中,他们将随机旅行,我不希望这样。我无法在第1行执行此部分-
我试着用图像来解释这一点。
好吧,这就是问题:我如何沿着这些点移动海龟,并连接能量/时间或能量/距离的图表
抄送:@Seth Tisue@JenB@yacc
更新1
-伙计们,我完成了我的运动,这是我的社区援助计划的一部分。在这段代码中,你的乌龟将移动特定的点,当它到达最后一点时,它将死亡。旅行时,它正在绘制海龟的数量
breed [cities city]
breed [flag person]
flag-own [target] ;;set features flag only
to setup
clear-all
reset-ticks
print "Setting up model."
set-default-shape cities "house" ;; set all cities shape by house
create-flag 1
[
set SIZE 2
set shape "turtle"
setxy -11 13
set target patch -3 12
face target
]
create-cities 1
[set color yellow set SIZE 2 setxy 8 2]
create-cities 1
[ set color yellow set SIZE 2 setxy -3 12]
create-cities 1
[ set color yellow set SIZE 2 setxy 3 3]
ask patch 3 3 [set pcolor red]
end
to go
ask flag-on patch -3 12 [
set target patch 8 2
face target
]
ask flag-on patch 8 2 [
set target patch 3 3
face target
]
ask flag-on patch 3 3 [
if distance target < 1 ;; check distance for last point
[die]]
ask flag with [ shape = "turtle" ]
[fd 1]
tick
end
繁殖[城市]
品种[旗手]
标记自己的[目标];;仅设置功能标志
设置
清除所有
重置滴答声
打印“设置模型”
设置默认形状城市“房子”;;以房子塑造所有城市
创建标志1
[
2号套餐
集形“海龟”
setxy-11 13
设定目标补丁-3 12
面对目标
]
创建城市1
[设定颜色黄色设定尺寸2设定XY 8 2]
创建城市1
[设定颜色黄色设定尺寸2设定XY-3 12]
创建城市1
[设置颜色黄色设置尺寸2设置XY 3]
询问补丁3[设置颜色为红色]
终止
外带
补丁3上的询问标志12[
设置目标补丁8 2
面对目标
]
补丁8上的ask标志2[
设定目标补丁3
面对目标
]
补丁3上的询问标志[
如果距离目标<1;;检查最后一点的距离
[死亡]]
用[shape=“turtle”]
[fd 1]
打上钩
终止
您是否试图理解已经给出的答案?在设置
中,将-10 5
替换为您要前往的第一个位置(即-12 8)。然后相应地更新go
代码
to go
ask flag-on patch -12 8
[ set target patch -5 12
face target
]
ask flag-on patch -5 12
[ set target patch 6 4
face target
]
ask flag with [ shape = "by" ]
[ forward 1 ]
end
这只是方向和运动。你需要试着为能量和死亡等编写一些代码,但要循序渐进,让一些东西发挥作用,然后添加下一个片段