Правило Сократить соединение

Правило Сократить соединение упрощает граф схемы с сохранением топологии.

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

Работа правила Сократить соединение

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

Сокращение количества соединений, соединяющих два других соединения или меньше

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

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

Сокращение количества соединений, соединяющих три других соединения или больше

При сокращении количества соединений, соединяющих три других соединения или больше, процесс Правила сокращения количества соединений зависит от определения уровней сети; то есть соединение, существующее в разделенной сети, не сокращается так же, как в иерархической сети.

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

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

Примечание:

Начиная с ArcGIS Pro 3.4, правило можно настроить так, чтобы оно учитывало направление потока на основе оцифрованного направления при поиске целевого восходящего или нисходящего соединения. В более ранних версиях ArcGIS Pro операции трассировки вверх и вниз по течению могли учитывать только направление потока на основе местоположений контроллеров подсети.

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

При сокращении соединений важно помнить три вещи:

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

На следующих схемах показаны примеры изменений подключений и отчетов о связности.

Схема А—сокращение соединения, подключенного к одному другому соединению

Схемы A1 и A2 в первой строке таблицы ниже показывают две схемы до сокращения. На каждом показано содержание схемы перед сокращением оранжевого соединения с одним подключенным соединением.

Схема A1—изменения графа и отчеты о связностиСхема A2—изменения графа и отчеты о связности
Содержание схемы примера A1 перед сокращением оранжевого соединения, которое подключено к одному другому соединению
Схема A1 показана перед сокращением оранжевого соединения, которое подключено к одному другому соединению.
Содержание схемы примера A2 перед сокращением оранжевого соединения, которое подключено к одному другому соединению
Схема A2 показана перед сокращением оранжевого соединения, которое подключено к одному другому соединению.
Схема примера A1 после сокращения оранжевого соединения
Схема A1 показана после сокращения оранжевого соединения.
Схема примера A2 после сокращения оранжевого соединения
Схема A2 показана после сокращения оранжевого соединения.

Схемы после сокращения оранжевого соединения показаны во втором ряду таблицы. После сокращения J2 и подключенные к нему ребра больше не видны на результирующих схемах, но правило отслеживало эти сетевые объекты. Теперь они связаны с целевым соединением J1.

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

  • Меняет количество подключений для целевых соединений—J1 до сокращения было подключено к 1 соединению, а после сокращения стало не подключенным. В общем случае, когда целевое соединение подключает N соединений перед сокращением, то после сокращения оно подключает N-1 соединений.
  • В итоге все сокращенные сетевые элементы попадут в отчет для другого целевого соединения.

Схема В—сокращение соединения, подключенного к двум другим соединениям

На следующих схемах показано, как сокращаются соединения, подключенные к двум другим соединениям.

Общий случай

Схемы B1 и B2 в первой строке таблицы ниже показывают две схемы до сокращения. На каждом показано содержание схемы перед сокращением оранжевого соединения с двумя подключенными соединениями.

Схема B1—изменения графа и отчеты о связностиСхема B2—изменения графа и отчеты о связности
Содержание схемы примера B1 перед сокращением оранжевого соединения, которое соединяет два других соединения
Схема B1 показана перед сокращением оранжевого соединения, которое соединяет два других соединения.
Содержание схемы примера B2 перед сокращением оранжевого соединения, которое соединяет два других соединения
Схема B2 показана перед сокращением оранжевого соединения, которое соединяет два других соединения.
Схема примера B1 после сокращения оранжевого соединения
Схема B1показана после сокращения оранжевого соединения.
Схема примера B2 после сокращения оранжевого соединения
Схема B2 показана после сокращения оранжевого соединения.

Схемы после сокращения оранжевого соединения показаны во втором ряду таблицы. После сокращения J2 и все подключенные к нему ребра больше не видны на результирующих схемах, но правило отслеживало эти сетевые объекты. Они теперь связаны с ребром сокращения синим пунктиром, которое было создано в ходе выполнения правила.

Как видно из этих примеров, сокращение соединений, подключающих два других соединения, действует так:

  • Оставляет количество подключенных соединений неизменным для этих двух других соединений
  • В результате сокращенное соединение и всего его совпадающие ребра попадут в отчет на ребре сокращение, которое создается

Сокращение соединений вдоль сложных ребер

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

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

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

Схема B3 в первой строке показывает схему до сокращения. Она ссылается на два сложных ребра, E1 и E2, состоящих из разных сегментов, каждый из них подключен к оранжевым соединениям.

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

Сокращение соединений, подключенных к трем другим соединениям и более

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

Схема С — сокращение соединений, подключенных к трем другим соединениям и более в сети с иерархическим определением уровней

Схемы C1 и C2 в первой строке таблицы ниже показывают две схемы до сокращения. На каждом показано содержание схемы перед сокращением оранжевого соединения.

Схема C1—обработкаСхема C2—обработка
Схема примера C1 перед выполнением правила сокращения
Схема C1 показана перед сокращением оранжевого соединения с тремя и более подключенными соединениями в сети с иерархическим определением уровней.
Схема примера C2 перед выполнением правила сокращения
Схема C2 показана перед сокращением оранжевого соединения с тремя или более подключенными соединениями в сети с иерархическим определением уровней.
Схема примера C1 показывает соединения, подключенные к соединению, которое необходимо сократить
Схема C1 показывает два подключенных соединения слева от оранжевого соединения, до которых это соединение может быть сокращено. Сокращение невозможно выполнить ни на одном из соединений справа, поскольку все они являются листовыми соединениями.
Схема примера C2 показывает соединения, подключенные к соединениям, которые необходимо сократить
Схема C2 показывает пять соединений, подключенных к соединению, которое необходимо сократить. Все они являются листовыми соединениями и поэтому не могут использоваться в качестве целевых соединений для сокращения оранжевого соединения.
Схема примера C1 после выполнения правила сокращения
Схема C1 показана после выполнения правила сокращения – оранжевое соединение успешно сокращено до одного из не листовых соединений, с которым оно соединено слева.
Схема примера C2 после выполнения правила сокращения
Схема C2 показана после выполнения правила сокращения – оранжевое соединение не сокращено.

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

В третьей строке таблицы показано содержимое схемы примера после сокращения. На схеме C1 оранжевое соединение успешно сокращается до одного или другого соединения, которое находилось слева от оранжевого соединения. В Схеме C2 оранжевое соединение не сокращается.

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

Схема C3—изменения графа и отчеты о связностиСхема C4—изменения графа и отчеты о связности
Содержание схемы примера C3 до выполнения правила сокращения
Схема C3 показана до сокращения оранжевого соединения, подключенного к пяти другим соединениям.
Содержание схемы примера C4 до выполнения правила сокращения
Схема C4 показана до сокращения оранжевого соединения, подключенного к пяти другим соединениям.

Схема примера C3 после сокращения оранжевого соединения
Схема C3 показана после сокращения оранжевого соединения, подключающего пять других соединений.
Схема примера C4 после сокращения оранжевого соединения
Схема C4 показана после сокращения оранжевого соединения, подключающего пять других соединений.

Схемы С3 и С4 в первой строке показывают схемы до сокращения оранжевого соединения, которое подключает пять других соединений.

Схемы после сокращения оранжевого соединения показаны во втором ряду:

  • Для Схемы C3 слева J3 и E1 после сокращения больше не видны.
  • Для Схемы C4 справа J3, E1, E2 и E3 после сокращения больше не видны.

В обоих случаях правило сокращения продолжает отслеживать эти сетевые элементы. Теперь они связаны с целевым соединением J1. Более того, J3, которое подключает N=5 соединения, сокращается до J1, которое подключает M=2 соединений до сокращения, затем подключает M=5 соединений после сокращения.

Схема D — сокращение соединений, подключенных к трем другим соединениям и более в сети с разделенным определением уровней

Схемы D1 и D2 в первой строке таблицы ниже представляют части сети с разделенным определением уровней. На них показано начальное содержание двух схем перед сокращением оранжевых соединений, подключающих три или более других соединений.

Схема D1 - ПроцессСхема D2 - Процесс
Схема примера D1 перед выполнением правила сокращения
Схема D1 показана перед сокращением оранжевого соединения с тремя подключенными соединениями в сети с разделенным определением уровней.
Схема примера D2 перед выполнением правила сокращения
Схема D12 показана перед сокращением оранжевого соединения с тремя или более подключенными соединениями в сети с разделенным определением уровней.
Схема примера D1 показывает восходящие (или нисходящие) соединения по отношению к соединению, которое нужно сократить
Схема D1 отображает отдельное восходящее соединение (или нисходящее соединение), возвращаемое при трассировке, начатой от соединения, которое нужно сократить.
Схема примера D2, показывающий соединения вверх по течению к соединению для сокращения
Схема D2 отображает несколько восходящих соединений, возвращаемых трассировкой, начатой от сокращаемого соединения.
Схема примера D1 после выполнения правила сокращения
Схема D1 показана после выполнения правила сокращения – оранжевое соединение успешно сокращено до единичного восходящего (или нисходящего) соединения.
Схема примера D2 после выполнения правила сокращения
Схема D2 показана после выполнения правила сокращения – оранжевое соединение не сокращено.

Во второй строке каждый рисунок показывает результат восходящей трассировки (или нисходящей трассировки), начатой от сокращаемого соединения, то есть начатой от оранжевого соединения - в схемах D1 и D2. Для Схемы D1 трассировка возвращает только одно восходящее соединение (или нисходящее соединение), а Схема D2 возвращает более одного восходящего соединения (или нисходящего соединения).

В третьей строке таблицы показано содержимое схемы примера после сокращения. В Схеме D1 оранжевое соединение эффективно сокращено, восходящее или нисходящее от него соединение становится целевым соединением для сокращения. В Схеме D2 оранжевое соединение не сокращается.

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

Схема D3—изменения графа и отчеты о связностиСхема D4—изменения графа и отчеты о связности
Содержание схемы примера D3 до выполнения правила сокращения
Схема C3 показана перед сокращением оранжевого соединения, подключающего четыре других.
Содержание схемы примера D4 до выполнения правила сокращения
Схема D4 показана перед сокращением оранжевого соединения, подключающего четыре других.

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

Схемы D3 и D4 в первой строке показывают схемы до сокращения оранжевого соединения, которое подключает четыре других соединения.

Схемы после сокращения оранжевого соединения показаны во втором ряду:

  • Для Схемы C3 слева J2 и E1 после сокращения больше не видны.
  • Для Схемы C4 справа J2, E1 и E2 после сокращения больше не видны.

В обоих случаях правило сокращения продолжает отслеживать эти сетевые элементы. Теперь они связаны с целевым соединением J1, которое находилось выше по течению (или ниже по течению) по отношению к J2. Более того, J2, которое подключает N=4 соединения, сокращается до J1, которое подключает M=1 соединений до сокращения и подключает M=3 соединений после сокращения.

Как показано в примерах, соединение J2 подключает N = три других соединения или более и выполняет следующее, когда у этого соединения есть только одно восходящее подключение (или нисходящее), J1, подключает M соединений:

  • Меняет число подключений для восходящего подключения J1, таким образом оно подключает N+M-2 соединений после сокращения
  • Приводит к сокращенному соединению и всех его связанных восходящих (или нисходящих) ребер, которые относятся к целевому восходящему (или нисходящему) соединению

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

Правило Сократить соединение подчиняется следующим правилам:

  • Соединение с содержанием не может агрегировать объекты без содержания.

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

    Схема примера D1 до сокращения
    Схема D1 показана до сокращения оранжевых соединений.
    Схема примера D1 после сокращения
    Схема D1 показана после сокращения оранжевых соединений.
    В Схеме 1 ни один сетевой элемент не сокращен, поскольку синее соединение не может агрегировать оранжевое соединение без содержания.

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

    Схема примера D3 до сокращения
    Схема D3 показана до сокращения оранжевых соединений.
    Схема примера D3 после сокращения
    Схема D3 показана после сокращения оранжевых соединений.
    В Схеме 3 только оранжевые соединения слева и подключенное к ним ребро сокращены до синего, которое, как и они, является соединением содержания. Оранжевое соединение без содержания J9 и два подключенных к нему ребра агрегированы до ребра сокращения.

  • Соединение без содержания не может агрегировать объекты или функции без содержания. Однако итоговые ребра сокращения могут агрегировать как элементы с содержанием, так и без него.

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

    Схема примера D4 до сокращения
    Схема D4 показана до сокращения оранжевых соединений.
    Схема примера D4 после сокращения
    Схема D4 показана после сокращения оранжевых соединений.
    В Схеме 4 ни один сетевой элемент не сокращен, поскольку синее соединение без содержания не может агрегировать оранжевое соединение содержания.

    Схема примера D5 до сокращения
    Схема D5 показана до сокращения оранжевых соединений.
    Схема примера D5 после сокращения
    Схема D5 показана после сокращения оранжевых соединений.
    На схеме 5 J4 и E3 с содержанием справа сокращены под соединением с содержанием J5. E2 присоединено до ребра сокращения R1, которое подключает соединение без содержания J3 к соединению содержания J5.

    Схема примера D6 до сокращения
    Схема D6 показана до сокращения оранжевых соединений.
    Схема примера D6 после сокращения
    Схема D6 показана после сокращения оранжевых соединений.
    На Схеме 6 оранжевое соединение J6 слева и подключенное к нему ребро E4 сокращены до синего, которое, как и они, является соединением без содержания. J8 и E6 справа — это содержания, которые сокращены под соединением содержания J9. E5 объединяется под ребром сокращения R2, которое подключает соединение без содержания J7 к соединению содержания J9.

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

Инструменты, которые можно использовать для добавления правила Сократить соединение в шаблон — Добавить правило Сократить соединение, Добавить правило Сократить соединение по атрибуту и Добавить правило Сократить соединение по категории — описаны следующим образом:

  • Используйте инструмент Добавить правило Сократить соединение для настройки сокращения соединений схемы на основе выбранных сетевых классов или таблиц объектов источников соединений. Он позволяет задавать список классов источников соединений и таблиц объектов и учитывает каждое соединение, принадлежащее этим классам соединений и объектам таблиц, как кандидата для сокращения, либо учитывая все соединения, не входящие в указанные классы соединений и таблицы объектов, как кандидаты для сокращения. Затем все соединения, которые являются кандидатами для сокращения, обрабатываются в соответствии с числом соединений, которые они подключают в схеме и, дополнительно, в соответствии с атрибутами подключенных ими ребер.
  • Используйте инструмент Добавить правило Сократить соединение по атрибуту для настройки сокращения соединений схемы на основании одного определенного класса источников соединений сети или таблицы объектов, фильтруя такие соединения по их атрибутам. Затем все соединения, которые являются кандидатами для сокращения, обрабатываются в соответствии с числом соединений, которые они подключают в схеме, и, дополнительно, в соответствии с атрибутами от их связанных ребер.
  • Используйте инструмент Добавить правило Сократить соединение по категории, чтобы настроить сокращение соединений, помеченных определенными категориями сети или не помеченные ими.

Примечание:

Инструмент Добавить правило Сократить соединение по категории применим только к Инженерной сети версии 7 и более поздних версий.

Подсказка:

При настройке правил схемы по атрибутам вы можете фильтровать объекты схем по значениям атрибутов источников сети относительно других значений атрибутов объектов схемы, используя следующее специальное выражение SQL: WHERE 'OBJECT' = 'IN_DIAGRAM'. Например, чтобы построить зарос к объекту схемы с минимальным значением атрибута в созданной схеме, вы можете настроить любой инструмент Добавить <XXX> по правилу атрибута с выражением SQL на основе следующего синтаксиса: <attributeName> = (SELECT MIN(<attributeName>) FROM <networkClassName>) WHERE 'OBJECT' = 'IN_DIAGRAM'.

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