Правило Сократить ребро

Правило Сократить ребро используется для упрощения графа схемы с сохранением топологии путем слияния каждого ожидаемого линейного объекта или объекта ребра сети и всех его точек подключений в чисто «схематическое» сетевое соединение. Такое соединение называется соединением сокращения.

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

Процесс работы правила Сократить ребро

Процесс работает для каждого кандидата на сокращение - линейного объекта сети или объекта ребра сети. Он определяет все точки подключений объекта: обе его крайние точки, и все точки, которые могут быть подключены вдоль этой линии объекта сети или объекта ребра сети, - а также суммирует все эти функции и объекты под специальным «соединением сокращения», которое создается в процессе правила.

Изменение соединений и отчет о сопоставлении при сокращении ребер

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

Пример A – Правило Сократить ребро, обрабатывающее простые линейные объекты сети или объекты ребра сети

На первом рисунке ниже показан пример схемы A перед сокращением ребер, т.е., содержание схемы перед сокращением простой линии, обозначающей черную шину B1. Эта шина соединена с J1 и J2.

Пример схемы А перед сокращением черного следа шин
Схема А показана перед сокращением ребер.

На изображении ниже показана схема А после сокращения ребра с сохранением воссоединенных ребер (Результат A1) и без них (Результат A2).

Пример схемы А после сокращения черного следа шин
Результат A1 — Схема A показана после сокращения ребер с сохранением воссоединенных ребер.
Пример схемы А после сокращения черного следа шин
Результат A2 — Схема A показана после сокращения ребер, которое объединяет повторно подключенные ребра (поведение правила по умолчанию).
  • Во всех случаях J1, J2 и B1 больше не видны на результирующих схемах, но правило отслеживало эти объекты. Теперь они связаны с определенным соединением сокращения, RJ1, созданным во время процесса правила — соединением черный ромб.
  • На итоговой схеме A1 правилу задано сохранение воссоединенных ребер. При этом ребра E1, E2 и E3, присоединенные к точкам вдоль шины, будут сохранены и заново присоединены к соединению сокращения RJ1.
  • На итоговой схеме A2 правилу задано агрегирование воссоединенных ребер. При этом каждое из ребер E1, E2 и E3, присоединенных к точкам вдоль шины, будет агрегировано в виде ребра сокращения R1, R2 и R3. Учтите, что каждое ребро сокращения отслеживает реальные ребра, которые оно агрегирует.

Пример B—правило Сократить ребро обрабатывает линейные объекты сети с точками связности на середине

На первом рисунке ниже показана схема B перед сокращением ребер, т.е., содержание схемы перед сокращением линейного объекта – черной шины B1, и всех точек соединения вдоль него – J1, J2, J3 и J4.

Пример схемы B перед сокращением черного следа шин
Схема B показана перед сокращением ребер.

На изображении ниже показана схема В после сокращения ребра с сохранением воссоединенных ребер (Результат B1) и без них (Результат B2):

Пример схемы B после сокращения черного следа шин
Результат B1 — Схема B показана после сокращения ребер с сохранением воссоединенных ребер.
Пример схемы B после сокращения черного следа шин
Результат B2 — Схема B показана после сокращения ребер, которое объединяет повторно подключенные ребра (поведение правила по умолчанию).
  • Каковы бы ни были настройки правила для воссоединенных ребер, J1, J2, J3, J4 и B1 не будут видимы в схеме; они теперь все агрегированы под соединением сокращения, RJ1 (черный ромб).
  • Если для правила установлено сохранение воссоединенных ребер (Результат B1), любые ребра, которые соединены с точками связности на середине серебра вдоль следа шины – то есть E1, E2 и E3 – сохраняются и заново присоединяются к соединению сокращения RJ1.
  • Если для правила установлено агрегирование воссоединенных ребер (Результат B2), каждое ребро – E1, E2 и E3 – агрегируется в ребро сокращения, R1, R2 и R3, и каждое из этих ребер сохраняет историю реальных ребер, которые оно агрегирует.

Сокращение и содержание ребра

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

Например, на Схеме C ниже показаны два следа шин, один с зелеными соединением и крайними точками, и один с черной точкой соединения и фиолетовой и оранжевой конечными точками.

Пример схемы C перед сокращением двух черных следов шин
Схема C показана перед выполнением правила Сократить ребро.

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

Пример схемы C1 после сокращения двух черных следов шин, когда всех их связанные точки являются единственным содержанием
Схема C показана после полного сокращения.

На рисунках ниже показаны случаи, когда следы шин с правой стороны невозможно сократить полностью:

  • На схеме C1 показан результат правила Сократь ребро, когда все зеленые точки и связанные с ними шины являются объектами содержания, но ни одна из черных/оранжевых/фиолетовых точек, связанных со второй шиной, не является, или только черная точка в середине является объектом содержания.
  • Схема C2 является результатом применения правила Сократить ребро, когда фиолетовая крайняя точка не объект содержания, как остальные.
  • Схема C3 показывает, как правило Сократить ребро работает в случае, когда оранжевая крайняя точка не объект содержания, как остальные.

Результат схемы C1
Показана итоговая Схема C1.
Результат схемы C2
Показана итоговая Схема C2.
Результат схемы C3
Показана итоговая Схема C3.

Настройка правила Сократить ребро

Можно добавить правило Сократить ребро в шаблон с помощью инструмента Добавить правило Сократить ребро по атрибуту.

Связанные разделы