PedEnter

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

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

Также блок PedEnter можно использовать для изменения характеристик пешехода, таких как скорость, цвет, диаметр и др.

Параметры

Место появления
Здесь вы можете выбрать, хотите ли вы, чтобы пешеходы появлялись в моделируемой среде на заданной линии (опция линия), в точке с заданными координатами (опция точка (x,y)) или внутри заданной области (опция область). Область моделируется с помощью прямоугольного узла или многоугольного узла.
Имя: locationType
Значение по умолчанию: PedSource.LOCATION_LINE
Возможные значения:
PedSource.LOCATION_LINE - Целевая линия
PedSource.LOCATION_POINT - Точка с заданными координатами
PedSource.LOCATION_AREA - Прямоугольный узел или многоугольный узел
Целевая линия [динамический]
[Виден, если Место появления: линия] Целевая линия, на которой будут появляться создаваемые этим блоком пешеходы.
Тип значения: TargetLine
Локальная переменная: ped - пешеход
Уровень [динамический]
[Виден, если Место появления: точка (x,y)] Уровень, на котором задана точка появления пешеходов.
Тип значения: Level
Локальная переменная: ped - пешеход
X, Y [динамический]
[Виден, если Место появления: точка (x,y)] X (Y) координата точки, в которой будут появляться пешеходы.
Тип значения: double
Локальная переменная: ped - пешеход
Область [динамический]
[Виден, если Место появления: область] Прямоугольный узел или многоугольный узел, внутри которого будут появляться пешеходы.
Тип значения: AreaNode
Локальная переменная: ped - пешеход
Комфортная скорость [динамический]
Комфортная для пешехода скорость. Это та скорость, с которой будет двигаться пешеход при отсутствии внешних факторов.
Тип значения: double
Локальная переменная: ped - пешеход
Начальная скорость [динамический]
Начальная скорость пешехода.
Тип значения: double
Локальная переменная: ped - пешеход
Диаметр [динамический]
Диаметр пешехода.
Тип значения: double
Локальная переменная: ped - пешеход
Группы пешеходов
Параметры в этой секции видны, если выбрана опция Создает группы пешеходов.
Создает группы пешеходов
Если опция выбрана, то этот блок будет создавать группы пешеходов. Свойства группы задаются с помощью расположенных ниже параметров.
Синтаксис: boolean createGroups
Группа создается
[Виден, если установлен флажок Создавать группы] Определяет, что будет являться критерием завершения создания группы: будет ли создаваться группа С заданным числом человек, или В течение заданного времени, или создание группы будет завершаться, если время между приходами пешеходов превзойдет заданное максимальное значение (Пока соблюдается интенсивность).
Имя: groupingMode
Изменить значение: set_groupingMode(new value)
Возможные значения:
pedSource.GROUPING_MODE_SIZE_REACHED
pedSource.GROUPING_MODE_TIMEOUT
pedSource.GROUPING_MODE_TIME_GAP
Число человек в группе [динамический]
[Виден, если установлен флажок Создавать группы и Группа создается: С заданным числом человек] Число человек в группе. Если, например, вы оставите значение по умолчанию, то будут создаваться группы из двух и из трех человек (с равными вероятностями).
Тип значения: int
Значение по умолчанию: uniform_discr( 2, 3 )
Локальная переменная: leader - лидер группы
Время формирования группы [динамический]
[Виден, если установлен флажок Создавать группы и Группа создается: В течение заданного времени] Время, в течение которого будет собираться группа. Когда этот таймаут истечет, формирование группы будет закончено, и начнется формирование новой группы.
Тип значения: double
Значение по умолчанию: exponential(300/ hour())
Макс. время между прибытиями для одной группы [динамический]
[Виден, если установлен флажок Создавать группы и Группа создается: Пока соблюдается интенсивность] Максимальное время между прибытиями пешеходов одной группы. Если время между прибытиями превзойдет заданное здесь значение, то формирование одной группы будет завершено и начнется формирование новой.
Тип значения: double
Значение по умолчанию: 2 секунды
Форма группы
[Виден, если установлен флажок Создавать группы] Форма группы пешеходов: толпа, шеренга, цепочка.
Имя: groupFormation
Изменить значение: set_groupFormation(new value)
Возможные значения:
pedSource.GROUP_FORMATION_SWARM - толпа
pedSource.GROUP_FORMATION_CHAIN - цепочка
pedSource.GROUP_FORMATION_FRONT - шеренга
Поведение группы в сервисах
[Виден, если установлен флажок Создавать группы] Здесь вы можете задать, как создаваемые этим блоком группы пешеходов будут вести себя при прохождении сервисов (если в задающем сервис блоке PedService не будет выбрано другое поведение). Возможны три варианта: Имя serviceGroupBehavior
Изменить значение set_serviceGroupBehavior(new value)
Возможные значения:
pedSource.SGB_INDIVIDUAL_SERVING
pedSource.SGB_ONE_MEMBER_IS_SERVED_OTHERS_WAIT_IN_QUEUE
pedSource.SGB_ONE_MEMBER_IS_SERVED_OTHERS_WAIT_IN_AREA
Отмена для пешехода распространяется на группу
[Виден, если установлен флажок Создавать группы] Если флажок установлен, то при отмене какой-либо команды (например, "ждать" или "перейти") для одного пешехода из группы эта команда будет отменена и для всех остальных членов этой группы.
Синтаксис: boolean solidCancelling
Действия
При входе[код]
Код, который выполняется, когда пешеход заходит в блок.
Локальная переменная: ped - пешеход
При выходе [код]
Код, выполняемый, когда пешеход покидает блок.
Локальная переменная: ped - пешеход
При начале создания группы[код]
Код, который выполняется, когда в блок приходит первый член новой группы.
Локальные переменные:
leader - лидер группы
PedGroup group - группа, сборка которой только что началась
При окончании создания группы [код]
Код, выполняемый в момент завершения сборки группы
Локальные переменные:
leader - лидер группы
PedGroup group - группа, сборка которой только что закончилась

Функции

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

long countGroups() - Возвращает количество созданных групп (включая группу, создаваемую в текущий момент времени).

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

void take(Agent ped) - Посылает указанного агента через выходной порт блока out, тем самым добавляя данного агента в процесс.

Agent remove(Agent agent) - Извлекает указанного агента из блока.

Порты

in
Входной порт.
out
Выходной порт.