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

Мостовой кран

Мостовой кран в графическом редакторе Трехмерное изображение мостового крана во время выполнения модели   

Мостовой кран — сложный элемент разметки пространства, графически отображающий мостовой кран. Перемещение агентов (материальных объектов) между двумя точками моделируемого пространства с помощью крана задается блоком MoveByCrane Библиотеки производственных систем.

Чтобы моделировать более сложные процессы c дополнительными операциями между захватом, перемещением и освобождением крана, можно использовать блок SeizeCrane для захвата крана и блок ReleaseCrane — для его освобождения.

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

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

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

Максимальная высота, на которую кран может поднять агента, равна высоте самого крана. Максимальный диапазон движения каретки по мосту равен ширине самого крана.

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

Мостовой кран предоставляет набор действий, используя которые можно дополнить поведение агента.

Чтобы нарисовать мостовой кран

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

  2. Мостовой кран может забирать и помещать материальные объекты непосредственно с/на путь, конвейер и ж/д путь. В таких случаях вам необходимо соединить кран с соответствующим элементом разметки пространства, разместив его рядом с этим элементом так, чтобы фигура крана подсветилась зеленым (это значит, что соединение может быть осуществлено).

  3. После успешного соединения фигура крана изменит цвет (см. изображение ниже):

  4. Вы можете отрегулировать ширину крана и длину крановых рельс, настроить ширину моста и местоположение моста и каретки.
  5. Вы можете изменить внешний вид крана, выбрав один из двух типов: Козловой кран и Подвесной кран в панели Свойства. Вы также можете задать Цвет крана и Цвет каретки.

Чтобы создать систему кранов

  1. Нарисуйте мостовой кран.
  2. В свойствах крана укажите Количество мостов, которое вы хотите задать.
  3. Если вы хотите задать одинаковую ширину для всех мостов одновременно, перетащите метку-манипулятор на краю первого моста слева:

  4. Если вы хотите получить доступ к настройкам отдельного моста, выделите его щелчком мыши.

Автоматический режим работы системы кранов

Автоматический режим подразумевает перемещение моста за агентом, который ожидает в блоке SeizeCrane или блоке MoveByCrane с включенной опцией захвата, транспортировка агента в блоке MoveByCrane и возвращение моста в исходную позицию. Все эти действия выполняются в соответствии с настройками блоков, без использования функций моста moveTo() или moveByProgram().

У агента, захватывающего мост, есть приоритет, который задается в свойстве Способ выбора агента блока SeizeCrane или MoveByCrane с включенной опцией захвата. Если в этом свойстве выбрана опция FIFO, то чем раньше агент поступил в очередь крана, тем выше его приоритет. Если выбрана опция Частный, то приоритет агента зависит от значения, вычисляемого в поле Правило выбора: чем выше значение, тем выше приоритет. Если в модели есть несколько блоков SeizeCrane и MoveByCrane, и они работают с одним и тем же краном, то более приоритетными будут считаться агенты, поступающие из очереди FIFO, так как для них задается очень высокий приоритет внутренними средствами библиотеки.

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

Разрешение конфликтов автоматическом режиме

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

Приоритеты мостов

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

  • Мосты в автоматическом режиме, которые остановились:

    • над Местом назначения, указанным в свойствах блока SeizeCrane или MoveByCrane, или над агентом, если захват происходит в блоке MoveByCrane с включенной опцией захвата крана или моста. При этом каретка и крюк могут продолжать движение.
    • над Местом назначения, указанным в свойствах блока MoveByCrane. Здесь мост ожидает агента, который его захватил, пока агент находится в других блоках, не связанных с управлением кранами.
    • из-за поломки, смоделированной вызовом функции fail().
  • Мосты в ручном режиме, которые перемещаются по вызову функций moveTo() или moveByProgram().
    Пользователь несет полную ответственность за правильность заданной программы движения моста, поэтому в случае столкновения двух мостов, двигающихся в ручном режиме, происходит ошибка.
  • Мосты, которые перемещают груз в автоматическом режиме. Для разрешения конфликтов между такими балками используются те же приоритеты агентов, которые использовались при захвате мостов в блоке SeizeCrane или MoveByCrane. Если приоритеты агентов не были заданы, более приоритетной считается мост, который начал движение первым.
  • Мосты, которые двигаются за грузом в автоматическом режиме. Для разрешения конфликтов между такими балками используются те же приоритеты агентов, которые использовались при захвате мостов в блоке SeizeCrane или MoveByCrane. Если приоритеты агентов не были заданы, более приоритетной считается мост, который начал движение первым.
  • Мосты, которые двигаются в место парковки в автоматическом режиме. При разрешении конфликтов между такими мостами более приоритетным считается мост, который начал движение первым.
  • Мосты в автоматическом режиме без задач:
    • которые находятся в месте парковки
    • которые остались на месте после освобождения агентом в блоке ReleaseCrane или MoveByCrane c включенной опцией освобождения крана или моста
    • освободившиеся по вызову функции remove(agent), когда мост двигался к агенту в блоке SeizeCrane
    • освободившиеся по вызову функции remove(agent), когда агент находится в блоке MoveByCrane

Свойства

Основные свойства

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

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

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

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

Видимость — Здесь вы можете указать, будет ли кран виден на анимации во время выполнения модели. Используя элемент управления, выберите да или нет.

Тип материального объекта — Тип материального объекта, перемещаемого с помощью этого мостового крана.

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

Количество мостов — Здесь вы можете задать количество мостов данного крана.

Подъем и перемещение выполняются — Здесь вы можете указать, как будет реализовано движение мостов, кареток и лебедок данного крана. Возможные варианты:

Последовательно — мост, каретка и лебедка будут двигаться по очереди из соображений безопасности
Одновременно — мост, каретка и лебедка будут двигаться одновременно. Этот режим значительно превосходит последовательный по скорости, но уступает ему в безопасности
Одновременно (кроме лебедки) — мост и каретка будут двигаться одновременно либо до, либо после того, как лебедка завершит свое движение
Если в кране задано больше одного моста, скорость компонентов крана, а также их ускорение и замедление, которые можно задать в свойствах ниже, будут применяться ко всем мостам этого крана.

Скорость моста — Здесь вы можете задать максимальную скорость движения моста. Свойство является динамическим, поэтому у вас есть возможность задать изменение скорости в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену скорости с помощью условного оператора: isLoaded ? agent.mySpeed : 1. Значение по умолчанию: 0.5 м/с.

Скорость каретки — Здесь вы можете задать максимальную скорость движения каретки. Свойство является динамическим, поэтому у вас есть возможность задать изменение скорости в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену скорости с помощью условного оператора: isLoaded ? agent.mySpeed : 1. Значение по умолчанию: 0.3 м/с.

Скорость лебедки — Здесь вы можете задать максимальную скорость лебедки (подъем/опускание). Свойство является динамическим, поэтому у вас есть возможность задать изменение скорости в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену скорости с помощью условного оператора: isLoaded ? agent.mySpeed : 1. Значение по умолчанию: 0.1 м/с.

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

Ускорение моста — [Параметр виден, если выбрана опция Задать ускорение/замедление] Здесь вы можете задать ускорение для моста. Если вы хотите, чтобы мост мгновенно начинал двигаться с максимальной скоростью, задайте здесь значение 0. Свойство является динамическим, поэтому у вас есть возможность задать изменение ускорения в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену ускорения с помощью условного оператора: isLoaded ? agent.myAcceleration : 1. Когда кран не загружен, переменная agent приобретает значение null. Значение по умолчанию: 0.3 м/с2

Замедление моста — [Параметр виден, если выбрана опция Задать ускорение/замедление] Здесь вы можете задать замедление для моста. Если вы хотите, чтобы мост останавливался мгновенно, задайте здесь значение 0. Свойство является динамическим, поэтому у вас есть возможность задать изменение замедления в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену замедления с помощью условного оператора: isLoaded ? agent.myDeceleration : 1. Когда кран не загружен, переменная agent равна null. Значение по умолчанию: 0.3 м/с2

Ускорение каретки — [Параметр виден, если выбрана опция Задать ускорение/замедление] Здесь вы можете задать ускорение для каретки. Свойство является динамическим, поэтому у вас есть возможность задать изменение ускорения в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену ускорения с помощью условного оператора: isLoaded ? agent.myAcceleration : 1. Когда кран не загружен, переменная agent равна null. Значение по умолчанию: 0.3 м/с2.

Замедление каретки — [Параметр виден, если выбрана опция Задать ускорение/замедление] Здесь вы можете задать замедление для каретки. Свойство является динамическим, поэтому у вас есть возможность задать изменение замедления в зависимости от того, загружен кран или нет. Используя локальную булеву переменную isLoaded, вы можете, например, задать смену замедления с помощью условного оператора: isLoaded ? agent.myDeceleration : 1. Когда кран не загружен, переменная agent равна null. Значение по умолчанию: 0.3 м/с2.

Действия

Во всех действиях к материальному объекту можно обратиться через локальную переменную agent, а к мосту — через локальную переменную bridge.

При поломке — Здесь вы можете задать код, который будет выполняться при поломке мостового крана, т.е. при вызове функции fail().

При починке — Здесь вы можете задать код, который будет выполняться при починке мостового крана, т.е. при вызове функции repair().

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

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

При достижении цели — Здесь вы можете задать код, который будет выполняться, когда все части крана, в том числе крюк, достигают Места назначения, указанного в свойствах блока SeizeCrane или MoveByCrane.

При завершении движения моста — Здесь вы можете задать код, который будет выполняться, когда мост завершит движение, достигнув Места назначения, указанного в свойствах блока SeizeCrane или MoveByCrane.

При смене состояния моста — Здесь вы можете задать код, который будет выполняться при изменении состояния моста.

При захвате — Здесь вы можете задать код, который будет выполняться непосредственно после того, как агент (материальный объект) захватит кран или балку.

При освобождении — Здесь вы можете задать код, который будет выполняться непосредственно после того, как агент (материальный объект) освободит кран или балку.

Внешний вид

Тип — Здесь вы можете выбрать внешний вид крана: Козловой кран или Подвесной кран.

Козловой кран Подвесной кран

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

Тип моста — Задает тип моста в зависимости от количества балок: Однобалочный или Двухбалочный.

Цвет каретки — Задает цвет заливки для каретки мостового крана. Если вы не хотите, чтобы кабина была закрашена, выберите Нет цвета.

Цвет крана — Задает цвет рельсов крана и крюка. Если вы не хотите, чтобы кран был закрашен, выберите Нет цвета.

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

Уровень — Уровень, на котором находится этот элемент.

X — X-координата точки, где расположен мостовой кран.

Y — Y-координата точки, где расположен мостовой кран.

Z — Высота мостового крана относительно абсолютной Z-координаты уровня, где расположен кран.

Длина крановых рельс — Здесь вы можете задать длину крановых рельс, по которым двигается мост.

Ширина крана — Здесь вы можете задать ширину крана, т.е. диапазон движения каретки между крановыми рельсами.

Высота крана — [Параметр виден, если в параметре Тип выбрана опция Козловой кран] Здесь вы можете задать высоту опор крана. Высота отсчитывается от Z-координаты крана.

Ширина моста — Здесь вы можете задать ширину моста.

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

Специфические

Отображать в — Здесь вы можете выбрать, будет ли фигура мостового крана отображаться В 2D и 3D, Только в 2D или Только в 3D.

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

Чтобы изменить ширину крана и длину крановых рельс

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

Чтобы изменить ширину моста

  1. Перетащите метку-манипулятор на краю моста, чтобы изменить его ширину.

Чтобы изменить местоположение моста и каретки

  1. Выберите нужный вам мост на графическом редакторе и перетащите метку, расположенную на фигуре каретки, чтобы изменить местоположение каретки и/или моста.

  2. Чтобы изменить местоположение моста, сохранив местоположение каретки прежним, перетаскивайте метку, зажав на клавиатуре клавишу Shift.

Функции

Вы можете изменять свойства мостового крана динамически в ходе выполнения модели, используя следующий API.

Рабочее состояние
Функция Описание
boolean isReady() Возвращает true, если мостовой кран готов к работе, в противном случае возвращает false.
boolean isFailed() Возвращает true, если мостовой кран сломан, в противном случае возвращает false.
boolean isLoaded() Возвращает true, если мостовой кран в данный момент занят материальным объектом, в противном случае возвращает false.
void fail() Если функция вызвана для однобалочного крана, то она моделирует поломку крана. Кран выходит из строя и прекращает работать. Если функция вызвана для многобалочного крана, произойдет ошибка. В случае с многобалочным краном рекомендуется моделировать поломки вызовом этой функции для каждого моста индивидуально.
void repair() Если функция вызвана для однобалочного крана, то она моделирует починку крана. Кран возвращается в рабочее состояние. Если функция вызвана для многобалочного крана, произойдет ошибка. В случае с многобалочным краном рекомендуется моделировать починки вызовом этой функции для каждого моста индивидуально.
Статистика загруженности
Функция Описание
double getUtilization() Возвращает загруженность мостового крана: долю времени, в течение которой кран был занят. Возвращаемое значение загруженности крана находится в диапазоне [0..1].
void resetStats() Производит сброс статистики загруженности.
int numberOfAgentsHandled() Возвращает количество агентов, обработанных всеми мостами крана.
Мосты
Функция Описание
OverheadCraneBridge getBridge(int index) Возвращает мост с заданным индексом. Отсчет мостов идет слева направо. Мост, расположенный левее всех, имеет индекс 0.

index — индекс моста
List<OverheadCraneBridge> getBridges() Возвращает список всех мостов данного крана.
int getNumberOfBridges() Возвращает количество мостов данного крана.
Агенты
Функция Описание
List<Agent> getAgents() Возвращает список всех агентов, которые захватили данный кран или мост данного крана. Агенты могут ожидать, пока к ним подъедет захваченный мост, или уже находиться в процессе транспортировки.
List<Agent> getAgentsInQueue() Возвращает список всех агентов, которые в данный момент находятся в очереди к этому крану.
Уровень
Функция Описание
Level getLevel() Возвращает уровень, на котором находится этот кран.
Препятствие
Функция Описание
boolean isObstacle() Возвращает true, если этот мостовой кран является препятствием для пешеходов и транспортеров, перемещающихся в произвольном режиме навигации. В противном случае возвращает false.
void setObstacle(boolean isObstacle) Задает этот мостовой кран в качестве препятствия для пешеходов и транспортеров, перемещающихся в произвольном режиме навигации.

isObstacle — если true, мостовой кран будет являться препятствием для пешеходов и транспортеров. В противном случае, кран не будет являться препятствием.
Движение
Функция Описание
boolean isAccelerationEnabled() Возвращает true, если опция настройки ускорения и замедления компонентов крана включена. В противном случае возвращает false.
void setAccelerationEnabled(value) Задает возможность настроить ускорение и замедление для компонентов крана.

value — если значение true, можно настроить ускорение и замедление для компонентов крана. Если значение false — нельзя.
OverheadCraneMovementMode getMovementMode() Возвращает способ реализации движения для моста, каретки и крюка: последовательный, одновременный или одновременный (кроме крюка).

Допустимые значения:
OVERHEAD_CRANE_MOVEMENT_STEP_BY_STEP
OVERHEAD_CRANE_MOVEMENT_CONCURRENT
OVERHEAD_CRANE_MOVEMENT_INDEPENDENT_HOIST
void setMovementMode(OverheadCraneMovementMode movementMode) Задает способ реализации движения для каретки, моста и крюка крана.

movementMode — режим движения компонентов крана
Допустимые значения:
OVERHEAD_CRANE_MOVEMENT_STEP_BY_STEP
OVERHEAD_CRANE_MOVEMENT_CONCURRENT
OVERHEAD_CRANE_MOVEMENT_INDEPENDENT_HOIST
double trolleySpeed(Agent agent, boolean isLoaded, SpeedUnits units) Возвращает скорость каретки крана, заданную в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительной скорости каретки, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет скорость каретки для загруженного крана, иначе — для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения скорости
double hoistSpeed(Agent agent, boolean isLoaded, SpeedUnits units) Возвращает скорость лебедки крана, заданную в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительной скорости лебедки, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет скорость лебедки для загруженного крана, иначе - для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения скорости
double bridgeSpeed(Agent agent, boolean isLoaded, SpeedUnits units) Возвращает скорость моста крана, заданную в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительной скорости моста, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет скорость моста для загруженного крана, иначе — для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения скорости
Point getCurrentHookPosition() Возвращает текущее положение крюка в системе координат крана (в пикселях).
Position getAbsoluteHookPosition() Возвращает текущее положение крюка в системе координат агента, в котором находится кран.
double bridgeAcceleration(Agent agent, boolean isLoaded, AccelerationUnits units) Возвращает значение ускорения для моста крана, заданное в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительному ускорению моста, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет ускорение моста для загруженного крана, иначе — для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения ускорения
double bridgeDeceleration(Agent agent,
boolean isLoaded, AccelerationUnits units)
Возвращает значение замедления для моста крана, заданную в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительному замедлению моста, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет замедление моста для загруженного крана, иначе - для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения ускорения
double trolleyAcceleration(Agent agent, boolean isLoaded, AccelerationUnits units) Возвращает значение ускорения для каретки крана, заданное в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительному ускорению каретки, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет ускорение каретки для загруженного крана, иначе — для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения ускорения
double trolleyDeceleration(Agent agent,
boolean isLoaded, AccelerationUnits units)
Возвращает значение замедления для каретки крана, заданное в его свойствах, в заданных единицах измерения. Это значение не будет равняться действительному замедлению каретки, если транспортируемый агент находится в блоке MoveByCrane со включенной опцией Использовать время работы.

agent — агент, транспортируемый с помощью крана
isLoaded — если равно true, то функция вернет замедление каретки для загруженного крана, иначе — для незагруженного (если вы задали различные значения для этих случаев).
units — константа, задающая единицу измерения ускорения
Размеры и компоненты крана
Функция Описание
double getCraneHeight() Возвращает высоту опор мостового крана (если выбран тип Козловой кран) в пикселях.
double getCraneHeight(LengthUnits units) Возвращает высоту опор мостового крана (если выбран тип Козловой кран) в заданных единицах измерения.

units — константа, задающая единицу измерения длины
void setCraneHeight(double craneHeight,
LengthUnits units)
Задает высоту опор мостового крана (если выбран тип Козловой кран) в заданных единицах измерения.

craneHeight — новое значение высоты
units — константа, задающая единицу измерения длины
double getCraneWidth() Возвращает ширину мостового крана в пикселях.
double getCraneWidth(LengthUnits units) Возвращает ширину мостового крана в заданных единицах измерения.

units — константа, задающая единицу измерения длины
void setCraneWidth(double craneWidth, LengthUnits units) Задает ширину мостового крана в заданных единицах измерения. craneWidth — новое значение ширины крана
units — константа, задающая единицу измерения длины
double getBridgeWidth() Возвращает ширину моста в пикселях.
double getBridgeWidth(LengthUnits units) Возвращает ширину моста в заданных единицах измерения.

units — константа, задающая единицу измерения длины
void setBridgeWidth(double bridgeWidth, LengthUnits units) Задает ширину моста в заданных единицах измерения.

bridgeWidth — новое значение ширины моста
units — константа, задающая единицу измерения длины
double getRunwayLength() Возвращает длину крановых рельс в пикселях.
double getRunwayLength(LengthUnits units) Возвращает длину крановых рельс в заданных единицах измерения.

units — константа, задающая единицу измерения длины
void setRunwayLength(double runwayLength, LengthUnits units) Задает длину крановых рельс в заданных единицах измерения.

runwayLength — новое значение длины крановых рельс
units — константа, задающая единицу измерения длины
void setInitialBridgePosition(double bridgePosition, LengthUnits units) Задает изначальное местоположение моста в заданных единицах длины.

bridgePosition — расстояние от точки отсчета до местоположения моста
units — константа, задающая единицу измерения длины
void setInitialHookPosition(double hookHeight, LengthUnits units) Задает изначальную высоту, на которой расположен крюк, в заданных единицах длины.

hookHeight — изначальная высота, на которой расположен крюк
units — константа, задающая единицу измерения длины
void setInitialTrolleyPosition(double trolleyPosition, LengthUnits units) Задает изначальное местоположение тележки в заданных единицах длины.

trolleyPosition — изначальное положение тележки
units — константа, задающая единицу измерения длины
Тип крана
Функция Описание
OverheadCraneType getType() Возвращает тип внешнего вида для этого крана.

Допустимые значения:
OVERHEAD_CRANE_BRIDGE — подвесной кран
OVERHEAD_CRANE_GANTRY — козловой кран
void setType(OverheadCraneType type) Задает тип внешнего вида для крана.

type — новый тип внешнего вида
Допустимые значения:
OVERHEAD_CRANE_BRIDGE — подвесной кран
OVERHEAD_CRANE_GANTRY — козловой кран
void setGirderType (OverheadCraneGirderDrawingType girderType) Задает тип моста для этого крана.

girderType — новый тип моста
Допустимые значения:
OVERHEAD_CRANE_GIRDER_SINGLE — однобалочный мост
OVERHEAD_CRANE_GIRDER_DOUBLE — двухбалочный мост
Цвет
Функция Описание
Color getColor() Возвращает цвет крана или null, если у крана нет цвета.
void setColor(Color color) Задает новый цвет крана.

color — новый цвет
Color getTrolleyColor() Возвращает цвет каретки крана или null, если у каретки крана нет цвета.
void setTrolleyColor(Color trolleyColor) Задает новый цвет каретки крана.

trolleyColor — новый цвет
Видимость
Функция Описание
boolean isVisible() Проверяет, отображается ли кран на анимации во время выполнения модели. Если функция возвращает true — значит, кран отображается, если false — нет.
void setVisible(boolean v) Задает видимость крана.

v — видимость. Если значение v равно true — то кран будет отображаться, если равно false — то нет.
Местоположение
Функция Описание
double getX() Возвращает X-координату центральной точки крана.
double getY() Возвращает Y-координату центральной точки крана.
double getZ() Возвращает Z-координату центральной точки крана.
Point getXYZ(Point out) Возвращает (X, Y, Z) координаты центральной точки крана.

out — объект типа Point, в который будут записаны полученные координаты. Объект может быть равен null.
Удаление
Функция Описание
void remove() Удаляет мостовой кран из презентации. Если кран не является частью презентации, функция не выполняет ничего. Обратите внимание, что удаление из презентации не обязательно подразумевает удаление из логики модели, поскольку логические сети и маршруты могли быть заданы еще до удаления элемента и не исчезают.
Как мы можем улучшить эту статью?