Трансфер

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

Трансфер, помещенный на конвейер, разделяет его на два независимых конвейера, работающих в одной конвейерной сети. Трансфер может соединять до 4 конвейеров под прямым углом (90°).

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

Трансфер обладает своей скоростью транспортировки материальных объектов (которая может отличаться от скорости присоединенных конвейеров).

Примечание: Вы можете использовать другие элементы разметки пространства, если:

Ширина трансфера изменяется автоматически при изменении ширины конвейера.

Время, необходимое трансферу для переключения на другой конвейер, задается параметром Задержка переключения.

Примечание: Конвейер ожидает, что объекты до и после трансфера будут одного типа.

Чтобы создать трансфер

Трансфер можно нарисовать любым из следующих способов:
  1. Перетащите элемент  Трансфер из секции Разметка пространства палитры Библиотека производственных систем на графическую диаграмму или на конвейер. Выбрав необходимое место, отпустите левую кнопку мыши. Местоположение трансфера можно изменить, перетащив его вдоль конвейера.
  2. Соедините два конвейера под прямым углом (90°). Трансфер будет создан автоматически в точке соединения двух конвейеров.
    Примечание: Если соединить два конвейера под любым другим углом, в точке соединения будет создан Поворотный стол.
Чтобы изменить местоположение трансфера
  1. Щелкните левой кнопкой мыши по трансферу, который необходимо переместить.
  2. Перетащите трансфер в нужное место на текущем конвейере.
    Форма конвейера будет изменена согласно новому местоположению трансфера.

Свойства

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

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

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

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

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

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

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

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

Скорость - Скорость, с которой трансфер перемещает агентов (материальные объекты).

Задержка переключения - Время, необходимое, чтобы трансфер переключился на другой конвейер.

Действия

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

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

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

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

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

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

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

Внешний вид

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

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

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

X – x-координата начальной точки области.

Y – y-координата начальной точки области.

Z – z-координата области, в метрах. Значение зависит относительно z-координаты этажа области.

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

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

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

Функции

Скорость и задержка

Функция

Описание

double getSpeed(SpeedUnits units)

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

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

double setSpeed(double speed, SpeedUnits units)

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

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

double getSwitchingDelay(TimeUnits units)

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

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

double setSwitchingDelay(double delay, TimeUnits units)

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

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


Этаж

Функция

Описание

Ground getGround()

Возвращает этаж, на котором расположен этот трансфер, или null, если для трансфера не задан этаж.

void setGround(Ground ground)

Задает новый этаж, на котором будет расположен этот трансфер.

Параметр:
ground - новый этаж.


Препятствие

Функция

Описание

boolean isObstacle()

Возвращает true, если этот трансфер является препятствием для транспортеров, перемещающихся в режиме произвольной навигации. В противном случае возвращает false.

void setObstacle(boolean isObstacle)

Задает этот трансфер в качестве препятствия для транспортеров, перемещающихся в режиме произвольной навигации.

Параметр:
isObstacle - если true, трансфер будети являться препятствием для транспортеров.  В противном случае трансфер не будет являться препятствием.


Агенты (материальные объекты)

Функция

Описание

int size()

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

T getAgent(int index)

Возвращает агента, находящегося в заданной позиции на трансфере (отсчет начинается с нуля, и ведется от выхода). 

Параметр: index - индекс агента на трансфере

List getAgents()

Возвращает список агентов (материальных объектов), находящихся в данный момент на трансфере, если таких нет, то возвращает null

boolean contains(Agent agent)

Возвращает true, если заданный материальный объект agent находится в данный момент на трансфере, в противном случае возвращает false.

Параметр: agent - агент

boolean removeAgent(Agent agent)

Удаляет заданного агента с трансфера. 

В случае успешного удаления возвращается true, в противном случае - false.

Параметр: agent - агент, который должен быть удален с трансфера


Сеть конвейеров

Функция

Описание

List getIncomingPaths()

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

List getOutgoingPaths()

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

ConveyorPath getConnection(int index)

Возвращает соединенный с трансфером конвейер по его индексу.

Параметр: index - индекс (номер) соединения.

List getConnections()

Возвращает список всех соединенных с этим трансфером конвейеров; если таких нет, то возвращает null

int getConnectionsCount()

Возвращает количество соединенных с этим трансфером конвейеров

ConveyorNetwork getNetwork()

Возвращает конвейерную сеть, к которой принадлежит этот трансфер.


Поломка / починка

Функция

Описание

boolean isFailed()

Возвращает true, если трансфер сломан, в противном случае возвращает false.

boolean fail()

Моделирует поломку трансфера. Трансфер выходит из строя и останавливает свою работу.

boolean repair()

Моделирует починку трансфера. Трансфер возвращается в рабочее состояние.

Видимость

Функция

Описание

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, то фигура не заливается


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

Функция

Описание

double getX()

Возвращает X-координату центральной точки фигуры.

double getY()

Возвращает Y-координату центральной точки фигуры.

double getZ()

Возвращает Z-координату центральной точки фигуры.

Point getXYZ(Point out)

Возвращает (X, Y, Z) координаты центральной точки фигуры.

Параметр:
out
- объект Точка типа Point, в который будут записаны полученные координаты. Объект может быть равен null.


Удаление

Функция

Описание

void remove()

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



См. также

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

Конвейер

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

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