Связность

Доступно с лицензией Network Analyst.

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

Связность группы

Связность в дополнительном модуле Дополнительный модуль ArcGIS Network Analyst начинается с определения групп связности. Все источники ребер определяются относительно одной группы связности. Все источники соединений могут определяться относительно одной или нескольких групп связности. Группа связности может содержать любое количество источников. Как соединяются элементы сети, зависит от групп связности, в которых эти элементы состоят. Например, два ребра, созданные из двух различных исходных классов объектов могут соединяться, если они находятся в одной и той же группе связности. Если ребра принадлежат различным группам связности, то ребра не будут соединены пока не объединятся соединением, которое участвует в обеих группах связности.

Группы связности используются для моделирования мультимодальных транспортных систем. Всем группам связности выбираются сетевые источники, соединенные между собой. В примере мультимодальной системы метро и автодорог, приведенном ниже, линиям метро и входам в метро назначена одна группа связности. Обратите внимание, что Metro_Entrance находится также в одной группе связности с улицами. Формируется связь между двумя группами связности. Любой путь между группами может быть преодолен через общий вход в метро. Например, механизм расчета Маршрут может определить, что лучший маршрут между двумя положениями в городе для пешехода – пройти по улице до входа в метро, сесть в вагон, пересесть на промежуточной станции на другой поезд и выйти из другого входа в метро. Группы связности различают две сети, а затем соединяют их в общих соединениях (входы в метро).

Группы связности

Соединение ребер в группе связности

Ребра в одной группе связности могут быть соединены двумя способами – в конечных точках или вершинах – которые установлены политикой соединения для источника ребер.

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

    В этом случае линейный объект l1 становится элементом ребра e1, а линейный объект l2 становится элементом ребра e2. Поэтому, для одного линейного объекта с такой политикой связности будет создан один элемент ребра. Построение сетей со связностью конечных точек является одним из способов моделирования пересекающихся объектов, таких как мосты. Для моделирования в этом случае два источника, мосты и улицы помещаются в одну группы связности (1). Источнику улиц присваивается любая связность вершин, чтобы объекты улиц могли соединяться с другими объектами улиц в совпадающих вершинах. Источнику мостов присваивается связность конечных точек. Это означает, что мосты соединяются с другими объектами ребер только в их конечных точках. Следовательно, любая улица, проходящая под мостом, не будет с ним соединена. Мост соединит другие улицы в их конечных точках.

    Соединение мостов

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

    Примечание:

    При работе с составными линейными объектами имейте в виду, что Network Analyst обрабатывает вершины на концах каждой части как конечные точки, а не как вершины.

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

    В данном случае две полилинии, пересекающиеся в общем расположении вершин, разделяются на четыре ребра с соединением в вершине. Ребра e1 и e3 определяются с помощью классов исходных объектов и идентификатора линейного объекта l1. Ребра e2 и e4 определяются с помощью классов исходных объектов и идентификатора линейного объекта l2. Соединение j3 будет вновь созданным соединением системы. Соединения j1, j2, j4, и j5 будут или системными соединениями, или соединениями от совпадающих точек классов исходных объектов.

Внимание:

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

Отсутствуют совпадающие вершины, отсутствует связность

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

Соединение ребер посредством соединений по группам связности

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

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

Соединения, которые учитывают связность
Настройка правил поведения с учетом связности для соединений

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

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

Соединения, замещающие связность

Установка политики замещения связности для соединений

Вертикальная связность

Связность сетевых элементов может зависеть не только от того, совпадают ли они по координатам Х и Y, но также и от рельефа. Есть два варианта моделирования высоты: используя поля высоты и используя значения z-координаты из геометрии.

Поля высоты

Поля высоты используются в наборе сетевых данных для детализации связности в конечных точках линий. Они содержат информацию о рельефе, полученную из полей класса объекта, который участвует в сети. Это отличается от определения связности на основании значений координаты z, в которых сведения о физическом рельефе сохраняются в каждой вершине объекта. Поля высоты применяются к источникам ребер и соединений. Источники объектов ребер, использующие поля высоты, имеют два поля для описания рельефа (по одному на каждый конец линейного объекта).

В примере ниже, четыре линейных объекта, EF1, EF2, EF3 и EF4, принадлежат к одной и той же группе связности и соблюдают связность конечных точек. Значения высоты в конечных точках для EF3 и EF4 равны 0; значения высоты в конечных точках для EF1 и EF2 равны 1. Поэтому в месте совпадения четырех конечных точек EF3 соединена только с EF4 (а не с EF1 или EF2). Точно так же, EF1 соединяется только с EF2, но не с EF3 или EF4.

Моделирование связности с помощью полей высоты

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

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

Поскольку поля высот используются только для уточнения связности в конечных точках линии, они не влияют на то, как устанавливается связность в вершинах, не являющихся конечными точками. Это вызвано тем, что у вершин, не являющихся конечными точками, отсутствует значение в поле высоты. Набор сетевых данных будет рассматривать все вершины, не являющиеся конечными точками, как имеющие отметку NULL. Это означает, что для источников ребер с политикой связности Любая вершина не являющиеся конечными вершины, которые совпадают с конечной точкой линии в той же группе связности, будут соединяться только в том случае, если у этой конечной точки линии значение в поле высоты равно NULL. Кроме того, вершины, не являющиеся конечными, будут соединяться со всеми другими совпадающими неконечными вершинами в той же группе связности.

Значения z-координаты из геометрии

Если исходные объекты имеют значения z, хранимые в их геометрии, можно создавать трехмерные сети.

Внешние маршруты пешехода зачастую моделируются с помощью 3D сетей. Необходимо учесть, что многие коридоры в многоэтажных зданиях не видны в 2D (координатах x,y), но их можно различить с помощью значений координат z в 3D-пространстве. Похожим образом шахты лифта соединяют этажи, перемещаясь в вертикальном направлении. В координатах x,y лифты являются точками, но в 3D они соответственно моделируются как линии.

Значения z-координат делает возможным моделирование связности объектов точек и линий в трех измерениях. Связность может возникать в трехмерных сетевых наборах данных только там, где у объектов источника (в особенности, точки, конечные точки и вершины линий) совпадают все три значения координат: x, y и z. Следующий набор изображений демонстрирует это требование:

Связанные и разъединенные линии в трехмерном пространстве (передний план)
В трехмерном пространстве отображаются четыре линейных объекта: три горизонтальных линии (синих) и одна диагональная линия (красная). Три зеленых круга обозначают линейные конечные точки.
Соединенные и автономные линии в трехмерном пространстве (вид сбоку)
Те же самые линии и конечные точки показаны в другой перспективе. Видно, что красная линия соединяется с двумя верхними синими линиями в их конечных точках. Но красная линия не пересекает нижнюю синюю линию.
Схема ребер, созданных из трехмерных объектов
На данном графике представлены ребра, которые могут соединяться с трехмерными объектами, показанными на предыдущих двух графиках. Поскольку красная линия имеет общие координаты x, y и z с двумя синими линиями сверху, ребра соединяются. Но пока красная линия и синяя нижняя линия не пересекаются, их соответствующие ребра в наборе сетевых данных не могут соединиться.

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

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

Схема результатов использования политики связности Конечная точка
При политике связности Конечная точка результирующие ребра (e2, e1 и e3) не соединяются.
Схема результатов использования политики связности Любая вершина для трехмерных линейных объектов
При политике связности Любая вершина полученные ребра будут соединены, что делает возможным переход между синими и красными ребрами.

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

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

  1. Откройте диалоговое окно Свойства набора сетевых данных.
  2. Щелкните Настройки источника > Вертикальная связность.

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

  3. Щелкните ниже столбца Поле высоты и выберите в ниспадающем списке необходимое поле.

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

    Изменить поле высоты.

    Примечание:

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

  4. Нажмите OK.

    Изменение поля высоты будет сохранено в наборе сетевых данных.

  5. Примечание:

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

    Более подробно о случаях, когда требуется повторное построение

Изменение связности группы

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

  1. Откройте диалоговое окно Свойства набора сетевых данных.
  2. Щелкните Настройки источника > Связность группы.
  3. Чтобы изменить политику связности для источника, щёлкните столбец Политика в источнике и выберите в списке политику связности.

    Связность источников ребер может быть установлена в значение Конечная точка или Любая вершина. Для источников соединений можно выбрать варианты Наследования или Замещения для задания политики связности, соответственно, наследования и замещения источников ребер.

    Выбор политики для источника.

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

    Каждый источник ребер может принадлежать только одной группе.

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

    Каждый источник соединений может принадлежать нескольким группам.

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

      Выберите подтипы.

    2. Нажмите OK.

      Подтипы появляются на странице Связность группы. Каждый из подтипов можно присвоить группе связности с отдельными правилами связности.

      Подтипы будут добавлены на страницу Связность группы.

  8. Нажмите OK.

    Изменения, выполненные на странице Связность группы, сохранены в наборе сетевых данных.

  9. Примечание:

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

    Более подробно о случаях, когда требуется повторное построение