如何创建创建(或拥有)具有特定属性的对象的海龟?
How to create turtles that create (or are owner of) objects with specific attributes?
下面的代码应该 select 一只随机乌龟 (selected
) 并让它创建一个具有属性 (size
, shape
) 的对象。 selected
是局部变量,objects
是品种; new_object
和 size
是 objects-own
。
我考虑为这些对象创建一个品种的原因是我想通过时间来监控网络中的这些对象。在我的代码中,对象的 size
和 shape
应该具有相同的值 selected's size
和 shape
。可能会有另一种方法来做我想做的事情,比我的方法更有效、更正确。
let selected nobody
set selected one-of turtles with [breed = engineersA or breed = engineersB]
if empty? [my-list] of selected [
ask selected [
set size random-float 1
]
create-objects random 10[
hide-turtle
set new_object self
set size [size] of selected
set shape [shape] of selected
]
set my-list fput new_object my-list
]
new_object
in my-list
应该仍然保留关于大小和形状的信息。
我应该遵循的模式是:
- select一只随机的乌龟
- 为这只乌龟创建一个具有特定属性(大小和形状)的新对象
- 将此对象(保留其属性)放入乌龟的列表中
由于我在绘制对象时遇到了一些问题(当我想区分engineersA
创建的对象和engineersB
创建的对象时),我想请你帮助更好地理解如何创建拥有 objects/items 的海龟。
任何建议 and/or 评论将不胜感激。
谢谢
你没有说你的问题是什么。但是可以通过三种方式创建海龟代理。查看 create-
、sprout-
和 hatch-
。在这种情况下,您需要 hatch
因为这是父海龟创建具有相同属性值的子海龟的方式。执行 hatch-objects
而不是 create-objects
。这也指定了子海龟的品种。
这是否符合您的要求?它从父级继承大小和形状,并使用 myself
来引用父级海龟。
ask one-of turtles with [breed = engineersA or breed = engineersB]
[ if empty? my-list
[ set size random-float 1
]
hatch-objects random 10
[ hide-turtle
let this-object self
ask myself
[ set my-list fput this-object my-list
]
]
]
下面的代码应该 select 一只随机乌龟 (selected
) 并让它创建一个具有属性 (size
, shape
) 的对象。 selected
是局部变量,objects
是品种; new_object
和 size
是 objects-own
。
我考虑为这些对象创建一个品种的原因是我想通过时间来监控网络中的这些对象。在我的代码中,对象的 size
和 shape
应该具有相同的值 selected's size
和 shape
。可能会有另一种方法来做我想做的事情,比我的方法更有效、更正确。
let selected nobody
set selected one-of turtles with [breed = engineersA or breed = engineersB]
if empty? [my-list] of selected [
ask selected [
set size random-float 1
]
create-objects random 10[
hide-turtle
set new_object self
set size [size] of selected
set shape [shape] of selected
]
set my-list fput new_object my-list
]
new_object
in my-list
应该仍然保留关于大小和形状的信息。
我应该遵循的模式是:
- select一只随机的乌龟
- 为这只乌龟创建一个具有特定属性(大小和形状)的新对象
- 将此对象(保留其属性)放入乌龟的列表中
由于我在绘制对象时遇到了一些问题(当我想区分engineersA
创建的对象和engineersB
创建的对象时),我想请你帮助更好地理解如何创建拥有 objects/items 的海龟。
任何建议 and/or 评论将不胜感激。
谢谢
你没有说你的问题是什么。但是可以通过三种方式创建海龟代理。查看 create-
、sprout-
和 hatch-
。在这种情况下,您需要 hatch
因为这是父海龟创建具有相同属性值的子海龟的方式。执行 hatch-objects
而不是 create-objects
。这也指定了子海龟的品种。
这是否符合您的要求?它从父级继承大小和形状,并使用 myself
来引用父级海龟。
ask one-of turtles with [breed = engineersA or breed = engineersB]
[ if empty? my-list
[ set size random-float 1
]
hatch-objects random 10
[ hide-turtle
let this-object self
ask myself
[ set my-list fput this-object my-list
]
]
]