Мы создали функцию, которая разместит транспорт в сервисном центре.
Алгоритм этой функции содержит два
цикла for.
Первый цикл выполняет итерирование по всем агентам, входящим в популяцию вертолетов. В строке инициализации цикла
for
используется следующий синтаксис: в круглых скобках вы сначала указываете имя типа агентов, находящихся в популяции
(Helicopter). Затем
h
- имя локальной переменной, которую мы задаем на этом участке кода. Вы можете использовать любое другое допустимое имя (hel,
a,
item, и так далее). После этого необходимо указать
helicopters
- имя популяции агентов, итерирование по которой мы будем выполнять.
Поскольку иногда мы хотим совершить не одно, а несколько действий с
каждым агентом популяции, необходимо сказать компилятору Java, какие
именно выражения Java должны выполняться во время каждой итерации
цикла. Для этого мы помещаем необходимые действия в фигурные скобки. В
нашем случае это всего лишь одна строка кода: { h.setLocation(center) }
Второй цикл for выполняет то же самое для популяции
trucks.
Теперь, чтобы функция заработала, ее нужно вызвать из кода.
Выделите
Main
в дереве модели (или сделайте щелчок мышью в пустом месте графического редактора этого типа агента) и перейдите в панель
Свойства. Разверните секцию свойств
Действия агента
и поместите вызов нашей функции в поле
При запуске:
Снова запустите модель. Вы увидите, что все грузовики и вертолеты находятся в сервисном центре. Мы зададим движение транспорта и поведение других агентов на следующих этапах нашего учебного пособия.
Контрольная модель: Maintenance - Phase 2