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

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

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

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

  1. Откройте диаграмму эксперимента Simulation (двойным нажатием на элемент Simulation в панели Projects).
  1. Добавьте бегунок на странице эксперимента, чтобы получить возможность изменять количество слонов. Перетяните элемент Бегунок  из палитры Элементы управления в графический редактор.
  1. В свойствах бегунка укажите Минимальное значение, Максимальное значение и Значение по умолчанию. Нажмите на кнопку Добавить метки..., чтобы добавить метки для бегунка, которые будут отображать минимальное, максимальное и текущие значения.
  2. Сейчас мы соединим бегунок со свойствами Main, агента модели верхнего уровня. Откройте раздел Параметры в свойствах эксперимента Simulation. Здесь вы можете указать значения всех параметров агента верхнего уровня (Main) данной модели.
  1. В поле NumberOfElephants, укажите действительное значение. Введите следующее: slider.getintValue().
    Используйте авто завершение когда пишите код.
  1. Запустите эксперимент и перетащите бегунок. Вы увидите, что количество слонов в модели равно количеству, которое вы указали бегунком до запуска модели.

    Здесь мы использовали функцию бегунка 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()