Направленный ациклический граф (DAG). В «Вердж3Д» данная структура данных используется для определения иерархии в нодовых материалах.
Создаёт новый граф с размером (количеством узлов) V.
Размер графа.
Список связанных узлов графа.
Данные привязанные к узлам графа.
Рёбра графа.
Добавляет новый узел к графу и привязывает к нему данные .nodeInfo.
Удаляет все узлы и рёбра из графа.
Добавляет ребро к графу.
Добавляет ребро к графу, соединяющее узлы v и w.
Удаляет ребро, соединяющее узлы v и w.
Возвращает ребро, соединяющее узлы v и w. Возвращает null в случае, если ребро не найдено.
Возвращает узел, смежный к узлу v.
Возвращает данные, привязанные к узлу v.
Возвращает индекс узла, соответствующего данным .nodeInfo.
Возвращает новый граф с инвертированными рёбрами. Исходный граф не изменяется.
Возвращает размер графа.
Возвращает входящие рёбра узла v.
Возвращает исходящие рёбра узла v.
Отделяет узел v от графа. Если removeNode=false (по умолчанию) оставляет данный узел внутри графа. Если removeNode=true также удаляет узел (и связанные с ним данные).
Вставляет подграф G в граф. Массивы edgesInG и edgesOutG содержат входящие и исходящие рёбра, которые будут использоваться для присоединения подграфа. Опциональные коллбеки copyNodeCb и copyEdgeCb вызываются для каждого узла/ребра, вставляемого в граф.
Преобразует граф в формат DOT (Graphviz) и выводит соответствующие данные в браузерную консоль. Необязательный параметр labelCallback используется для присоединения меток к печатаемым узлам графа. В данный коллбек передаются индекс узла и присоединённые данные в качестве параметров.
О том как получить исходный код этого модуля читайте тут.