AnyLogic
Развернуть
Размер шрифта

Настройка параметров до запуска модели

Элементы управления можно разместить на странице эксперимента с внешним интерфейсом, чтобы получить возможность использовать их для настройки параметров до запуска модели (как показано на рис. ниже).

По умолчанию презентация эксперимента не видна при запуске модели. Чтобы сделать ее видимой, в свойствах эксперимента Simulation отключите опцию Пропустить экран эксперимента и запустить модель.

Сейчас мы рассмотрим это на примере модели Wandering Elephants. У этой модели есть параметр NumberOfElephants в агенте верхнего уровня Main. Этот параметр определяет количество слонов. Сейчас мы предоставим пользователю возможность настраивать этот параметр на странице эксперимента до запуска модели.

Как соединить элемент управления на странице эксперимента с параметром агента модели верхнего уровня

  1. Откройте диаграмму эксперимента Simulation (двойным нажатием на элемент Simulation в панели Projects).

  2. Добавьте бегунок на странице эксперимента, чтобы получить возможность изменять количество слонов. Перетяните элемент Бегунок  из палитры Элементы управления в графический редактор.

  3. В свойствах бегунка укажите Минимальное значение, Максимальное значение и Значение по умолчанию. Нажмите на кнопку Добавить метки..., чтобы добавить метки для бегунка, которые будут отображать минимальное, максимальное и текущие значения.
  4. Сейчас мы соединим бегунок со свойствами Main, агента модели верхнего уровня. Откройте раздел Параметры в свойствах эксперимента Simulation. Здесь вы можете указать значения всех параметров агента верхнего уровня (Main) данной модели.

  5. В поле NumberOfElephants, укажите действительное значение. Введите следующее: slider.getintValue(). Используйте авто завершение когда пишите код.

  6. Запустите эксперимент и перетащите бегунок. Вы увидите, что количество слонов в модели равно количеству, которое вы указали бегунком до запуска модели.

Здесь мы использовали функцию бегунка getIntValue(), чтобы получить текущее значение бегунка и связать его с параметром NumberOfElephants агента Main.

Таким же образом можно вынести и другие элементы управления. Обратите внимание на то, что вы используете разные функции, имена функций отличаются в зависимости от элемента управления и типа значения параметра, который вы связываете.

Элемент управления Тип значения Можно связать с типом Функция
Флажок boolean boolean isSelected()
Текстовое поле String String
double
int
getText()
getDoubleValue()
getIntValue()
Переключатель int int getValue()
Бегунок double double int getValue()
getIntValue()
Выпадающий список String String getValue()
Список String String getValue()
Как мы можем улучшить эту статью?