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

PedAreaDescriptor

ВНИМАНИЕ: Этот блок недоступен, начиная с версии AnyLogic 8.7. Для моделирования наклонных плоскостей и областей с ограничениями скорости и доступа используйте элементы разметки пространства Многоугольный узел и Прямоугольный узел

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

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

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

Демо-модель: Sloped Area Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.

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

Демо-модель: Stairs Открыть страницу модели в AnyLogic Cloud. Там можно запустить модель или скачать ее по ссылке Исходные файлы модели.

Параметры

Тип пешехода
Тип пешеходов, находящихся в данной области. Выберите здесь тип пешеходов, если пешеходы в вашей модели нестандартного типа и у них есть параметры, к которым нужно получить доступ из этого блока.
Значение по умолчанию: 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() Возвращает неизменяемую коллекцию, содержащую пешеходов, находящихся в этом блоке.
Как мы можем улучшить эту статью?