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

Создание нестандартных типов ресурсов

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

Чтобы создать нестандартный тип ресурса

  1. Перетащите элемент Тип ресурса из палитры Библиотеки Моделирования Процессов в графический редактор.

  2. Появится диалоговое окно мастера Создание агента.
  3. Укажите Имя нового типа на первой странице мастера.
  4. Выберите тип анимации для ресурсов этого типа. Если вы хотите, чтобы ресурсы отображались и в 2D, и в 3D, выберите 3D и выберите 3D фигуру анимации из списка ниже, в ином случае, выберите 2D и выберите фигуру из другого списка. Если ни одна фигура не подходит вам, выберите опцию Нет. Вы можете нарисовать фигуру анимации в типе агента позже в любое время.

  5. Закончив выбирать фигуру анимации, щелкните по кнопке Далее, чтобы перейти на следующий шаг.
  6. Укажите параметры для этого типа ресурсов. Щелкните мышью кнопку < добавить... > в списке параметров, чтобы добавить новый параметр. Выделив этот параметр в списке, вы можете настроить его имя, тип и значение по умолчанию в настройках на панели справа. Чтобы удалить параметр из списка, выделите его и щелкните по кнопке .

  7. Щелкните по кнопке Готово.

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

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

Обращение к параметрам нестандартных типов ресурсов

Поскольку нестандартные типы ресурсов являются типами агентов, в AnyLogic возможно расширить их функциональность с помощью дополнительных переменных, параметров, функций и других элементов.

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

Предположим, в модели имеется набор ресурсов (нестандартного типа), который называется Cashiers и включает несколько единиц ресурса типа Cashier. На диаграмме агента Cashier присутствует параметр isBusy булева типа, которому по умолчанию присвоено значение false. Мы хотим изменить значение на true для задействованной единицы этого ресурса.

Для этого введите следующий код в поле При захвате ресурса в разделе Действия на панели свойств блока Seize:

((Cashier)unit).isBusy = true;
Мы обращаемся к типу агента Cashier, а не к набору ресурсов Cashiers.

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

Чтобы узнать больше о параметрах нестандартных агентов, изучите данный материал: Доступ к параметрам агентов из свойств блоков.

Как мы можем улучшить эту статью?