Пятна NetLogo

Материал из Энциклопедия вычислительного мышлении
Перейти к навигации Перейти к поиску

Пятна - точки - patches

Агенты НетЛого, которые связаны с конкретными координатами на экране. К точке всегда можно обратится. Например:

  • ask patch 0 0 [set pcolor yellow]

Ограничения для пятен[править]

  • Пятно не может умереть - невозможно велеть пятну умереть.
  • Невозможно создать новое пятно. Пятно не может hatch. Однако, пятно может родить новую черепашку sprout или черепашку какой-то специальной породы sprout-breed - По команде sprout в данной точке появляется черепашка

Команды для пятен[править]

clear-patches (cp)
Очистить, стереть все пятна и вернуть их в исходное значение - черный цвет
diffuse patch-variable number
значение переменной раздается на ближайших соседей - диффузия цвета, запаха на поверхности
diffuse4 patch-variable number
значение переменной раздается на 4-х соседей - ближайшие соседние точки по прямой
import-pcolors
считать цвета из файла - картинки
patch-at dx dy
пятно с координатами относительно данного агента
Например, ask patch 2 5 [set pcolor yellow ask patch-at 2 2 [set pcolor red]]
patch-left-and-ahead angle distance
пятно слева и сверху
patch-at-heading-and-distance
пятно по направлению и на расстоянии
ask patch-at-heading-and-distance -90 1 [ set pcolor green ]

Примеры команд и процедур с пятнами[править]

Окрасить все пятна в зависимости от расстояния до центра
ask patches [set pcolor distancexy 0 0]
Покрасить точки вокруг центральной точки в зеленый цвет
ask patch 0 0 [set pcolor yellow ]
ask patch 0 0 [set pcolor yellow ask neighbors4 [ set pcolor green ]]
ask patch 0 0 [set pcolor yellow ask neighbors4 [ set pcolor green ask neighbors [set pcolor red] ]]
и так далее, если хотим перекрашивать соседей