PedAreaDescriptor

Задает область, определяющую правила и/или накладывающую ограничения на скорость пешеходов. Позволяет изменять скорость пешеходов и задавать их максимальную скорость. 

Также объект позволяет задавать "движущиеся уровни", для которых можно задавать направление и скорость движения (эта функция используется при моделировании эскалаторов и движущихся дорожек). 

Вы можете задать ограничение на пропускную способность в области, заданной этим объектом. Такая возможность может понадобиться, например, когда область моделирует эскалатор или вращающуюся дверь. В обоих этих случаях существует ограничение на пропускную способность области. Пропускная способность задается как число - максимальное количество пешеходов, которое может входить в эту область в выбранную единицу модельного времени.

Демо модель: Sloped Area

С помощью объекта PedAreaDescriptor можно задать, как изменяется скорость пешехода при подъеме по лестнице (заданной с помощью наклонной области):

Демо модель: Stairs

Параметры

Тип пешехода [динамический]
Тип пешеходов, находящихся в данной области. Выберите здесь тип пешеходов, если пешеходы в вашей модели нестандартного типа и у них есть параметры, к которым нужно получить доступ из этого блока.
Значение по умолчанию:  Agent
Упоминается ниже как:  T
Область
Здесь вы должны указать элемент разметки область, задающую геометрическую форму области. 
Синтаксис: AreaNode locationArea
Скорость ограничена
Если опция выбрана, то внутри области допустимо ограничение скорости пешехода.
Имя: speedIsLimited Тип: boolean
Изменить значение: set_speedIsLimited(новое значение)
Максимальная скорость
[Виден, если выбран параметр Скорость ограничена] Максимально допустимая скорость передвижения пешеходов внутри области. Для пешеходов, передвигающихся со скоростью, превышающей указанное значение, скорость будет уменьшена. Скорости остальных пешеходов не изменятся.
Имя: maximumSpeed  Тип: double
Изменить значение: set_maximumSpeed(новое значение)
Скорость умножается
Если опция выбрана, то скорость пешеходов внутри области будет умножена на заданный коэффициент.
Используйте этот параметр при моделировании лестниц и прочих областей, находясь внутри которых пешеходы меняют свою скорость.
Имя: speedIsMultiplied Тип: boolean
Изменить значение: set_speedIsMultiplied(новое значение)
На коэффициент
[Виден, если выбран параметр Скорость умножается] Коэффициент, на который будет умножена скорость. Применяется ко всем пешеходам, находящимся внутри области. Если значение равно 1.0, то ничего не происходит.
Имя: speedFactor  Тип: double
Изменить значение: set_speedFactor(новое значение)
Область движется
Если опция выбрана, то заданная область представляет собой "движущийся уровень" (эскалаторы и т.п.) и движется со скоростью, заданной в поле ниже.
Имя: isMoving Тип: boolean
Изменить значение: set_isMoving(новое значение)
Со скоростью
[Виден, если выбран параметр Движущийся уровень] Скорость движущегося уровня.
Имя: movingSpeed  Тип: double
Изменить значение: set_movingSpeed(новое значение)
Разрешить управление доступом
Если опция выбрана (или значение равно true), то область можно будет закрывать на вход. Пешеходы, находящиеся за границей области, не смогут попасть внутрь нее. Пешеходы, находящиеся внутри области, по-прежнему смогут ее покинуть.
Имя: enableAccessControl  Тип: boolean
Изменить значение: set_enableAccessControl(новое значение)
Пропускная способность (пешеходов в ед.вр.)
Здесь вы можете задать ограничение на пропускную способность в области, заданной этим объектом. Такая возможность может понадобиться, например, когда область моделирует эскалатор или вращающуюся дверь. В обоих этих случаях существует ограничение на пропускную способность области. Пропускная способность задается как число - максимальное количество пешеходов, которое может входить в эту область в выбранную единицу модельного времени.
Имя: throughput  Тип: double
Изменить значение: set_throughput(новое значение)
Действия
При входе [код]
Код, выполняемый, когда пешеход попадает в область.
Локальная переменная: T ped - пешеход.
При выходе [код]
Код, выполняемый, когда пешеход покидает область.
Локальная переменная: T ped - пешеход

Функции

double area() - Возвращает площадь области, в квадратных метрах. 

double density() - Возвращает среднюю плотность пешеходов в области, измеряемую в количестве пешеходов на квадратный метр.

boolean isOpen() - Возвращает true, если область открыта, иначе возвращает false.

void setOpen(boolean isOpen) - Управляет границей области, делая ее прозрачной для пешехода, находящегося вне области. Установка параметра в true открывает область, в false – закрывает ее.

boolean contains(T ped) - Возвращает true, если область содержит заданного пешехода, иначе возвращает false.

int size() - Возвращает количество пешеходов, находящихся внутри области.

Set<T> getPeds() - Возвращает неизменяемую переменную типа коллекция, содержащую пешеходов, находящихся в этом блоке.