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

Аттрактор

Аттракторы в прямоугольном узле

Элемент разметки пространства Аттрактор позволяет задавать точные места нахождения агентов в прямоугольном или многоугольном узле.

  • Вы можете использовать конкретный аттрактор как место назначения. Если с помощью узла можно задать место назначения движения, (например, в блоке MoveByTransporter или MoveTo), то аттрактором можно задать точное место внутри узла, в которое прибудет агент.
  • С помощью узла можно также задать место ожидания (например, в блоках Delay или Queue), а аттракторами в узле задать точные места нахождения агентов во время ожидания.
  • Аттрактор позволяет задавать поворот фигуры анимации агента в момент нахождения агента в точке аттрактора.

Аттракторы в пешеходных моделях

В пешеходном моделировании аттрактор позволяет управлять местоположением пешеходов внутри узла.

  • Если узел задает место назначения потока пешеходов (указывается в блоке PedGoTo), то аттракторы задают точное количество целей назначения внутри узла.
  • Если узел задает место ожидания пешеходов, (указывается в блоке PedWait), аттракторы задают точное положение точек, в которых пешеходы будут ожидать внутри узла. Пешеходы во время ожидания будут стремиться к местоположению аттрактора. Используйте аттракторы для моделирования информационных стендов и экранов, витрин с товарами в магазинах и т.д.

Позиции ожидания (сидячие места) заданы аттракторами

Demo model: Pedestrian Attractors

Ориентация аттрактора

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

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

Посмотрите, как использована ориентация аттрактора в учебном пособии по процессному моделированию:

Учебные пособия > Модель банка > Шаг 3. Добавление клерков > Задайте фигуру разметки для кассиров > 5. Мы будем использовать аттракторы, чтобы задать местоположение клерков.

Добавление аттракторов

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

Аттракторы можно размещать только внутри узла.

Чтобы добавить аттракторы из палитры

  1. Перетащите элемент Аттрактор из палитры Разметка пространства в прямоугольный или многоугольный узел в графическом редакторе.

  2. Также вы можете добавлять аттракторы с помощью элемента Аттрактор в палитре. После двойного щелчка по элементу его иконка поменяется на . Теперь вы сможете добавить несколько аттракторов в подходящий узел, просто щелкая мышью по графическому редактору.
  3. Один щелчок мышью добавляет один аттрактор. Новые аттракторы, которые вы нарисуете таким способом, имеют ориентацию, заданную по умолчанию (вы можете видеть направление аттракторов на рисунке выше). Чтобы задать ориентацию аттрактора в режиме рисования, не отпускайте мышь после щелчка, а перемещайте курсор по кругу, пока не выберете ориентацию, которая вам подходит:

  4. Чтобы выйти из режима рисования, щелкните в графическом редакторе за пределами узла.
  5. После того, как вы закончили рисование, все новые аттракторы будут выделены, и для них откроется панель Свойства. Вы можете добавить несколько аттракторов простым щелчком и задать ориентацию всех этих аттракторов с помощью панели Свойства, когда закончите рисование:

Чтобы добавить несколько аттракторов

  1. Щелкните мышью по узлу в графическом редакторе.
  2. В свойствах узла щелкните кнопку Аттракторы... Появится диалоговое окно Аттракторы.
  3. Укажите в диалоговом окне, сколько аттракторов вы хотели бы создать. Вы можете просто указать число в поле Количество аттракторов, или заполнить ими весь узел с помощью варианта Расстояние между аттракторами, или расположить их в виде сетки заданных ширины и высоты, выбрав последнюю опцию Сетка.

  4. Вы можете выбрать опцию Удалить все существующие аттракторы и заменить их теми, которые зададите выше до того, как щелкните кнопку OK. Если же вы хотите очистить узел от аттракторов и не создавать новые, то, выбрав опцию удаления, введите 0 в поле Количество аттракторов и затем уже щелкните OK.

Свойства

Основные

Имя — Имя аттрактора. Имя используется для идентификации аттрактора и доступа к нему из формул других переменных.

Исключить — Если опция выбрана, то аттрактор будет исключен из модели.

Отображается на верхнем агенте — Если опция выбрана, то фигура будет видна на презентации типа агента, в который будет вложен данный агент.

Местоположение и размер

X — x-координата местоположения аттрактора.

Y — y-координата местоположения аттрактора.

Ориентация — Здесь вы можете выбрать, куда должны быть направлены агенты, когда они достигают аттрактора.

Функции

Вы можете изменять некоторые свойства элементов динамически в ходе выполнения модели с помощью следующих функций:

Местоположение
Функция Описание
double getX()

double getY()

double getZ()
Возвращает абсолютную координату X (Y, Z) аттрактора. Значение Z-координаты соответствует значению соответствующей координаты узла, в котором находится аттрактор.
double getRelativeX()

double getRelativeY()
Возвращает координату X (Y) аттрактора относительно узла, в котором он находится.

Ориентация
Функция Описание
double getOrientation() Возвращает ориентацию аттратора в радианах (по часовой стрелке).

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