1.0.1 • Published 7 years ago

ors-svg-scheme v1.0.1

Weekly downloads
1
License
ISC
Repository
-
Last release
7 years ago

Документация

Основные классы:

  • Widget - основной класс-виджет
  • SwitchControl - контрол, который показывает состояние системы
  • ModeControl - контрол, который показывает режим работы системы (зима/лето)
  • TemperatureControl - контрол, который показывает текущую температуру
  • Scheme - Класс, который рисует компоненты на схеме
  • Tube - труба
  • TubeGroup - группа труб
  • Clapan - задвижка
  • Conditioner - завеса
  • Pump - насос
  • Text - текстовая метка
  • Arrow - стрелка
  • Termometer - термометр / манометр
  • Filter- фильтр
  • Flowmeter - расходомер
  • Numerator - вычислитель
  • Chiller - чиллер
  • Buffer - буфер
  • Compressor - компрессор
  • Evaporator - испаритель

#Widget

Самый главный класс. Через него нужно работать со схемой. Данный класс отрисовывает форму с контролами и саму схему

Методы

  • Widget(selector, options = {}) - конструктор
    • selector (String) - dom-селектор блока, в котором будет отрисовываться виджет
    • options (Object) - дополнительные опции
      • title (String) - название виджета
      • svg_width (Integer) - ширина схемы
      • svg_height (Integer) - высота схемы
  • addControl(control_type) - добавляет контрол на панель управления виджета
    • control_type (String) - название контрола ('switch', 'mode' или 'temperature')
    • Возвращает: SwitchControl, ModeControl или TemperatureControl
  • render() - рендер виджета

Свойства

  • scheme (Scheme) - объект схемы, на котором будут отрисовываться все компоненты
  • controls (Array[]) - массив контролов, которые были добавлены в этот виджет
  • widgetCount (Static Integer) - общее количество виджетов, которые были добавлены
  • id (String) - id виджета
  • el (DOM) - DOM-элемент, в котором рендерится виджет

#Контролы ####SwitchControl

Данный контрол показывает общее состояние системы. Может принимать три состояния: система работает, система не активна, а также аварийное состояние

  • setState(new_state) - устанавливается новое состояние
    • new_state (Integer) - Состояние (1 - система работает, 0 - система не работает, -1 - аварийное состояние)

####ModeControl

Данный контрол показывает режим работы системы - зима или лето

  • setMode(new_mode) - устанавливается новый режим работы
    • new_mode (Integer) - Состояние (1 - лето, 0 - зима)

####TemperatureControl

Данный контрол показывает температуру системы

  • setValue(new_value) - устанавливается новое значение температуры
    • new_value (Float) - Новое значение

#Scheme

Данный класс занимается отрисовкой всех компонентов схемы

Методы

  • addTube(points) - добавляет трубу
    • points (Array) - массив объектов узлов трубы. Представляет из себя: {x: 1, y: 1}, {x: 10, y: 10}
    • Возвращает: Tube
  • addArrow(points) - добавляет стрелку
    • points (Array) - матрица точек узлов трубы. Представляет из себя: {x: 1, y: 1}, {x: 10, y: 10}
    • Возвращает: Arrow
  • addClapan(options) - добавляет задвижку
    • options (Object) - объект параметров для задвижки
      • position (Object) - расположение задвижки
        • x (Integer)
        • y (Integer)
      • horizontal (Boolean) - Горизонтальное расположение задвижки
      • direction (Integer) - Значение 1, если задвижка располагается по часовой стрелке, 2 - против часовой стрелки
      • threeDirections (Boolean) - задвижка с тремя выходами и манометром
    • Возвращает: Clapan
  • addConditioner(position, size) - добавляет завесу
    • position (Object) - расположение завесы
      • x (Integer)
      • y (Integer)
    • size (Object) - размер завесы
      • width (Integer)
      • height (Integer)
    • Возвращает: Conditioner
  • addPump(position) - добавляет насос
    • position (Object) - расположение завесы
      • x (Integer)
      • y (Integer)
    • Возвращает: Pump
  • addTermometer(position) - добавляет термометр / манометр
    • position (Object) - расположение термометра / манометра
      • x (Integer)
      • y (Integer)
    • Возвращает: Termometer
  • addText(position, text, anchor) - добавляет текст
    • position (Object) - расположение текста
      • x (Integer)
      • y (Integer)
    • text (String) - текст
    • anchor (String) - расположение текста ('start', 'middle' или 'end')
    • Возвращает: Text
  • addFilter(position) - добавляет фильтр
    • position (Object) - расположение фильтра
      • x (Integer)
      • y (Integer)
    • Возвращает: Filter
  • addFlowmeter(position) - добавляет расходомер
    • position (Object) - расположение расходомера
      • x (Integer)
      • y (Integer)
    • Возвращает: Flowmeter
  • addNumerator(position) - добавляет вычислитель
    • position (Object) - расположение вычислителя
      • x (Integer)
      • y (Integer)
    • Возвращает: Numerator
  • addPath(points) - добавляет дополнительные пути (например, для проводов)
    • points (Array) - массив точек (аналогично Tube)
    • Возвращает: path (объект Raphael.js)
  • addChiller(position) - добавляет чиллер
    • position (Object) - расположение чиллера
      • x (Integer)
      • y (Integer)
    • Возвращает: Chiller
  • addBuffer(position, size) - добавляет буфер
    • position (Object) - расположение буфера
      • x (Integer)
      • y (Integer)
    • size (Object) - размер буфера
      • width (Integer)
      • height (Integer)
    • Возвращает: Buffer
  • addCompressor(position) - добавляет компрессор
    • position (Object) - расположение компрессора
      • x (Integer)
      • y (Integer)
    • Возвращает: Compressor
  • addEvaporator(position, width = 50) - добавляет вычислитель
    • position (Object) - расположение вычислителя
      • x (Integer)
      • y (Integer)
    • width (Integer) - размер испарителя (ширина или высота, в зависимости от направления)
    • Возвращает: Evaporator

Cвойства

  • context (Raphael.Paper) - объект, который отрисовывает элементы
  • tubes (Array) - массив всех добавленных труб
  • clapans (Array) - массив всех добавленных задвижек
  • conditioners (Array) - массив всех добавленных завес
  • pumps (Array) - массив всех добавленных насосов
  • termometers (Array) - массив всех добавленных термометров
  • arrows (Array) - массив всех добавленных стрелок
  • texts (Array) - массив всех добавленных текстовых меток
  • filters (Array) - массив всех добавленных фильтров
  • flowmeters (Array) - массив всех добавленных расходомеров
  • numerators (Array) - массив всех добавленных вычислителей
  • paths (Array) - массив всех добавленных путей
  • chillers (Array) - массив всех добавленных чиллеров
  • buffers (Array) - массив всех добавленных буферов
  • compressors (Array) - массив всех добавленных компрессоров
  • evaporators (Array) - массив всех добавленных испарителей

Tube (труба)

Свойства

  • direction (Integer) - задает направление трубы. Если число отрицательно, то поток в трубе движется в обратном направлении. Если 0, то поток в трубе не движется
  • season (String) - температура воды ('cold' / 'hot')

TubesGroup (группа труб)

Методы

  • setSeason(season) - задает цвет всем трубам в группе - season (String) - цвет трубы ('hot' или 'cold') Свойства
  • tubes (Array) - массив труб

Pump (насос)

Свойства

  • season (String) - цвет насоса ('hot' или 'cold')
  • direction (Boolean) - направление движения насоса (положительное - по часовой стрелке, отрицательное - против часовой стрелки, 0 - насос не активен)

Clapan (задвижка)

Свойства

  • direction (Integer) - Направление задвижки (1 - по часовой стрелке, 2 - против часовой стрелки)
  • horizontal (Boolean) - задвижка располагается горизонтально
  • threeDirections (Boolean) - задвижка имеет три выхода

Conditioner (кондиционер)

Свойства

  • enabled (Boolean) - завеса активна
  • season (String) - цвет воздуха ('hot' или 'cold')

Termometer (термометр / манометр)

Методы

  • setValue(value) - задает значение. Оно должно быть в интервале от 40 до 150 градусов (термометр) или в интервале от 100 до 1000 КПа (манометр)
    • value (Float) - значение

Свойства

  • type (String) - тип прибора ('termometer' / 'manometer')
  • value (Float) - значение

Filter (фильтр)

Свойства

  • vertical (Boolean) - фильтр располагается вертикально (вход и выход сверху и снизу соответственно)

Numerator (вычислитель)

Свойства

  • value (String) - значение или текст, который будет выводиться на экран вычислителя (Если текст большой, то часть текста будет обрезаться)

Chiller (чиллер)

Свойства

  • enabled (Boolean) - активность чиллера. Если false, то чиллер будет неактивным

Compressor (компрессор)

Свойства

  • enabled (Boolean) - активность компрессора. Если false, то компрессор будет неактивным

Evaporator (испаритель)

Свойства

  • horizontal (Boolean) - испаритель располагается горизонтально
  • width (Integer) - ширина (высота, если horizontal = true) испарителя