Это старая версия документа.


JS логика рисования коммутации представлена скриптом commutation.js.
Для отрисовки на canvas'e используется библиотека Raphael.js (https://github.com/DmitryBaranovskiy/raphael/)

Внутри логика отрисовки разделена по функционалу на отдельные обьекты:

ACableDrawerОтрисовка кабелей и волокон кабеля
AInformationВывод дополнительной информации о волокнах
ACableColorPaletteРабота с цветовой схемой кабеля
ALinkManagerХранение и управление соединениями между волокнами
ALinkDrawerОтрисовка соединений волокон

Константы и опции

scale По умолчанию равна 2.

SCHEME_OPTIONS = {
    SCALE               : scale,
    CABLE_WIDTH         : 25 * scale,
    CABLE_HEIGHT_MARGIN : 5 * scale,
    MODULE_WIDTH        : 5 * scale,
    FIBER_WIDTH         : 5 * scale,
    FIBER_HEIGHT        : 25 * scale,
    FIBER_MARGIN        : 5 * scale,
    ROUTER_WIDTH        : 25 * scale,
    ROUTER_HEIGHT_MARGIN: 5 * scale,
    CANVAS_BASE_SIZE    : 65,
    CABLE_COLOR         : 'black',
    ROUTER_COLOR        : 'green',
    FONT                : 'Roboto',
    FONT_SIZE           : 13,
    FONT_COLOR          : 'black'
  };