Черепашки NetLogo/Test-turtle.nlogo

Материал из Letopisi.Ru — «Время вернуться домой»
Перейти к: навигация, поиск
Как создавать кнопки я уже знаю. Давай сегодня научимся расставлять и собирать черепах.
Тема - как создать, разогнать и собрать черепашек в группы

turtles-own [group]


to setup ca

каждая черепашка располагается в случайной точке экрана

cro number_of_turtles [ setxy random-xcor random-ycor set color one-of remove gray remove green base-colors set group false ]

черепахи рождаются по порядку и поворачиватся последовательно. Когда мы им потом даем команду разойтись, они образуют круг
cro number_of_turtles [fd max-pxcor - 2]
Этого же результата можно достичь, если мы используем команду layout-circle

end

to circle layout-circle turtles max-pxcor - 2

end

мы умеем создавать черепашек и расставлять их по экрану.
Теперь попробуем собрать черепашек одинакового цвета


to collect_color

Первая версия - черепашки объединяются, но делают много лишних движений
ask other turtles with [color = [color] of myself]
во второй версии задаем черепашкам свойство принадлежности к группе и в начале устанавливаем значение этого свойства в false

if group = false [

ask other turtles with [(color = [color] of myself) and (group = false)] [

черепашка прыгает в сторону вызывающего агента

face myself jump (distance myself) - 1

черепашка устанавливает свою принадлежность к группе в true - и теперь ее не будут вызывать

set group true create-link-to myself ] ] end

to histogr histogram [count my-out-links] of turtles end @#$#@#$#@ GRAPHICS-WINDOW

Персональные инструменты
Инструменты