从文件导入海龟位置
Import turtles position from a file
早上好:
我目前正在开发一个 netlogo 程序,其中有一个包含海龟坐标的文件,我需要导入该文件,以便每只海龟都采用它在文件中的位置。文件如下:
9.220967873876688 30.6518906113243
-11.68237910031844 -11.246301104888516
2.5642482677264593 -1.6456061198786152
24.89458409582633 22.473096145446608
33.714972669018216 -17.295603130774897
10.347090714821402 13.476191522153966
3.881957027308774 -18.70063134965679
-21.711570773095524 -25.038263308838506
-20.649763022691737 28.674828042635635
-5.107177490557619 21.26440747439797
-6.29157511915799 -32.595514274136164
19.134302620042213 -26.443694241313267
-27.207781014142487 -3.48941202705942
18.198639754306242 -9.202785605985115
-12.82510430838797 5.818222632445828
-28.761569626881588 13.521815467262908
34.93451881825029 -34.49959417879696
27.234341179357532 5.506201903765271
第一列是x轴,第二列是y轴。世界维度是 y 轴 (-35,35) 和 x 轴 (-35,35)。在这个例子中有 20 个坐标。所以我想从这个文件中导入,根据文件坐标生成 20 只海龟。
感谢您的帮助。
假设坐标文件是一个文本文件,其值由空格和回车分隔 returns,从问题看来,与文件相关的原语就足够了。
有两种可能的情况。
你提前知道会有多少只乌龟的坐标
在这种情况下,只需使用 file-open
、file-read
和 file-close
:
to setup
clear-all
file-open "coordinates.txt"
create-turtles 18 [
setxy file-read file-read
]
file-close
end
(请注意,您的文件示例包含 18 对坐标,而不是 20 对)
你事先不知道会有多少只海龟的坐标
在这种情况下,使用 file-at-end?
添加一个 while
循环:
to setup
clear-all
file-open "coordinates.txt"
while [not file-at-end?] [
create-turtles 1 [
setxy file-read file-read
]
]
file-close
end
早上好: 我目前正在开发一个 netlogo 程序,其中有一个包含海龟坐标的文件,我需要导入该文件,以便每只海龟都采用它在文件中的位置。文件如下:
9.220967873876688 30.6518906113243
-11.68237910031844 -11.246301104888516
2.5642482677264593 -1.6456061198786152
24.89458409582633 22.473096145446608
33.714972669018216 -17.295603130774897
10.347090714821402 13.476191522153966
3.881957027308774 -18.70063134965679
-21.711570773095524 -25.038263308838506
-20.649763022691737 28.674828042635635
-5.107177490557619 21.26440747439797
-6.29157511915799 -32.595514274136164
19.134302620042213 -26.443694241313267
-27.207781014142487 -3.48941202705942
18.198639754306242 -9.202785605985115
-12.82510430838797 5.818222632445828
-28.761569626881588 13.521815467262908
34.93451881825029 -34.49959417879696
27.234341179357532 5.506201903765271
第一列是x轴,第二列是y轴。世界维度是 y 轴 (-35,35) 和 x 轴 (-35,35)。在这个例子中有 20 个坐标。所以我想从这个文件中导入,根据文件坐标生成 20 只海龟。
感谢您的帮助。
假设坐标文件是一个文本文件,其值由空格和回车分隔 returns,从问题看来,与文件相关的原语就足够了。
有两种可能的情况。
你提前知道会有多少只乌龟的坐标
在这种情况下,只需使用 file-open
、file-read
和 file-close
:
to setup
clear-all
file-open "coordinates.txt"
create-turtles 18 [
setxy file-read file-read
]
file-close
end
(请注意,您的文件示例包含 18 对坐标,而不是 20 对)
你事先不知道会有多少只海龟的坐标
在这种情况下,使用 file-at-end?
添加一个 while
循环:
to setup
clear-all
file-open "coordinates.txt"
while [not file-at-end?] [
create-turtles 1 [
setxy file-read file-read
]
]
file-close
end