Ветвление конвейера


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

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

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

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

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

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

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

Свойства

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

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

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

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

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

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

Внешний вид

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

Цвет линии - Задает цвет линии. Если вы не хотите, чтобы линия контура была видна, выберите Нет цвета.

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

Смещение от начала конвейера - Расстояние от начальной точки основного конвейера до центральной точки ветвления конвейера.

Связь между конвейерами, расположенными на разных диаграммах

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

Чтобы соединить конвейеры, расположенные на разных диаграммах

  1. Перетащите элемент  Ветвление конвейера из секции Разметка пространства палитры Библиотека производственных систем на графическую диаграмму и разместите его вплотную к той точке магистрального конвейера, где вы хотите создать ветвление.
  2. Откройте графическую диаграмму агента, на которой находится ваш боковой конвейер.
  3. Добавьте сетевой порт на ту конечную точку бокового конвейера, где должно происходить соединение с магистральным конвейером.
  4. В панели Свойства порта переключите поле параметра Соединить с портом в режим ввода динамического значения и впишите соответствующее <имя агента>.<имя ветвления конвейера>.
  5. Перетащите агента на ту графическую диаграмму, где находится магистральный конвейер. Отрегулируйте размещение презентации бокового конвейера так, чтобы ветвление конвейера и сетевой порт находились друг поверх друга.

Функции

Конвейер

Функция

Описание

ConveyorPath getConveyor()

Возвращает магистральный конвейер, на котором расположено ветвление.

void setConveyor(ConveyorPath conveyor)

Задает магистральный конвейер, на котором расположено ветвление.

Параметр:
conveyor - новый конвейер


Местоположение

Функция

Описание

double getOffset(LengthUnits units)

Возвращает расстояние от начальной точки магистрального конвейера до центральной точки ветвления (в заданных единицах измерения).

Параметр:
units - константа, задающая единицу измерения длины

void setOffset(double offset, LengthUnits units)

Задает расстояние от начальной точки магистрального конвейера до центральной точки ветвления (в заданных единицах измерения).

Параметры:
offset - новое значение расстояния
units - константа, задающая единицу измерения длины

boolean isOnRightSide()

Возвращает значение true, если ветвление конвейера расположено на правой стороне магистрального конвейера. В противном случае возвращает значение false.

void setOnRightSide(boolean isOnRightSide)

Размещает ветвление на заданной стороне магистрального конвейера.

Параметр:
isOnRightSide - если передается значение true, ветвление будет размещено на правой стороне. Чтобы разместить ветвление на левой стороне магистрального конвейера, нужно передать значение false.

Point getXYZ()

Возвращает координаты элемента ветвления (он считается точкой).


Связь с портом

Функция

Описание

NetworkPort getPairedPort()

Возвращает сетевой порт, связанный с этим ветвлением конвейера.

void setPairedPort(NetworkPort pairedPort)

Задает сетевой порт, связанный с этим ветвлением конвейера.

Параметр:
pairedPort - сетевой порт, принадлежащий другой сети


Видимость

Функция

Описание

boolean isVisible()

Проверяет, отображается ли ветвление конвейера на анимации во время выполнения модели. 

Если функция возвращает true - значит, ветвление конвейера отображается, если false - нет.

void setVisible(boolean v)

Задает видимость ветвления конвейера.

Параметр:
v - видимость. Если значение v равно true, то ветвление будет отображаться, если равно false - то нет.


Цвет / текстура

Функция

Описание

Color getLineColor()

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

Texture getLineTexture()

Возвращает текстуру контура фигуры или null, если у контура нет текстуры, а используется цвет (в последнем случае используйте функцию getLineColor()).

void setLineColor(Color lineColor)

Задает цвет контура ветвления.

Параметр:
lineColor - новый цвет

void setLineColor(Paint lineColor)

Задает цвет (или текстуру) контура ветвления.

Параметр:
lineColor - новый цвет (или текстура)

Color getFillColor()

Возвращает цвет заливки ветвления или null, если у ветвления нет заливки или если ветвление отображает текстуру (в последнем случае используйте функцию getFillTexture()).

Texture getFillTexture()

Возвращает текстуру заливки ветвления или null, если у ветвления нет текстуры заливки или если ветвление использует цвет заливки (в последнем случае используйте функцию getFillColor()).

void setFillColor(Color fillColor)

Задает цвет заливки ветвления.

Параметр:
fillColor - новый цвет заливки; если значение равно null, то фигура не заливается

void setFillColor(Paint fillColor)

Задает для ветвления новый цвет заливки (или текстуру, объект типа Texture).

Параметр:
fillColor - новый цвет заливки; если значение равно null, то фигура не заливается


Удаление

Функция

Описание

void remove()

Удаляет ветвление конвейера из презентации. Если ветвление не является частью презентации, функция не выполняет ничего.

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



См. также

 Элементы разметки Библиотеки производственных систем

 Конвейер

Конвейерная сеть

 Библиотека производственных систем

 Java документация (англ.): Класс ConveyorSpur