[ABM·006]NetLogo词典之turtles

create-turtles 100

这一句命令是频繁出现的,其中“turtles”这个词的直译是“海龟集”。

NetLogo源自LOGO语言。Logo 是由麻省理工大学(MIT)的 Wally Feurzeig、Seymour Papert 和 Cynthia Solomon 于 1967 年设计的一种编程语言。"LOGO"不是首字母缩略词:该名称是 Feurzeig 在 Bolt、Beranek 和 Newman 工作时创造的,源自希腊语logo,意思是单词或思想。该语言是LISP语言的一个面向儿童编程的分支。

所以,其核心词汇之一,叫做海龟(turtle)也就不足为奇了,毕竟面向儿童,生动有趣是必须的。

LOGO语言的海龟标识
MIT的2024暑期活动的标识

LOGO语言让孩子们可以通过在屏幕上移动一只海龟来绘制图形,如多边形、花朵、蜘蛛网或其它许多有趣的形状。这些图形又被称为海归图案(turtle graph)。比如,用下面的6行命令,让海龟连续6次向前走300步,然后右转60°,海龟走出的轨迹就形成一个正六边形。

FORWARD 300 RIGHT 60 ##让海龟向前走300步,然后右转60°,下同
FORWARD 300 RIGHT 60
FORWARD 300 RIGHT 60
FORWARD 300 RIGHT 60
FORWARD 300 RIGHT 60
FORWARD 300 RIGHT 60

在NetLogo里,turtle是可以移动的个体,turtles是其复数形式,指代的是个体的集合,所以叫做海龟集。

以下是turtle的一些关键特性:

(1)用户创建:用户可以在模拟中创建turtles,定义它们的属性和行为。
(2)可移动:turtles可以在模拟环境中改变位置,这是它们与"patches"(地块)的主要区别,后者是固定在特定坐标上的。
(3)任意坐标定位:turtles可以在模拟视图的任何坐标上放置,这些坐标通常是二维的。
(4)属性和行为**:海龟可以拥有各种属性,如颜色、形状、大小、方向以及速度等,并且可以通过编写代码来定义它们的行为,例如移动、加速、减速、与其他海龟或环境互动等。
(5)按创建顺序标识:每个turtle在创建时会被分配一个唯一的标识符,通常是按照它们被创建的顺序编号的,例如"turtle 0"表示第一个创建的海龟。
(6)在地块之上显示:在NetLogo的世界中,turtle默认显示在地块的上方,这使得它们在视觉上更容易被观察和区分。

下面的代码,是将turtle的形状设定为轿车的外型,以表示是在模拟车辆。

crt 100 [ set shape "car"   #将turtles的外形设置为轿车的形状,crt是create-turtles的简写
  setxy random-xcor random-ycor #将每辆车的位置设置为随机位置。
]
crt了100辆随机位置和随机颜色的轿车
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。