Сводка
Создает новый набор сетевых данных, уменьшая количество линейных объектов до минимального необходимого для корректного моделирования входного набора данных. Получаемый на выходе более эффективный набор сетевых данных требует меньше времени для анализа, отрисовки результатов и создания направлений движения. Инструмент создает набор сетевых данных и исходные классы объектов; при этом входной набор сетевых данных с его исходными объектами остается неизменным.
Более подробно о том, как работает инструмент Слияние сетиИллюстрация
Использование
Этот инструмент не создает готовую сеть. Для создания нового набора сетевых данных перед выполнение анализа используйте инструмент Построить сеть.
Набор сетевых данных и классы объектов, созданные в выходной рабочей области базы геоданных имеют одни и те же имена набора данных, набора сетевых данных и класс объектов. Инструмент не работает, если в рабочей области базы геоданных уже существует хоть один набор данных с таким именем.
В выходной класс линейных объектов переносятся только те поля из входных классов объектов, которые используются в наборе сетевых данных. Примеры полей:
- Поля высоты
- Поля, используемые в функциях вычисления атрибутов сетей (длина, время, односторонние ограничения, иерархия и пр.)
- Поля, используемые при создании направлений движения (названия улиц, символы и пр.)
Если набор сетевых данных, к которому применяется слияние, не содержит какой-либо функциональности 10.1, будет создан набор данных версии 10.0.
Синтаксис
arcpy.na.DissolveNetwork(in_network_dataset, out_workspace_location)
Параметр | Объяснение | Тип данных |
in_network_dataset | Объединяемые наборы сетевых данных. Входной набор сетевых данных должен быть файлом или набором данных персональной базы геоданных с одни источником ребер. Допускается любое количество источников соединений и источников поворотов. Источник ребер должен содержать следующие объекты:
Входной набор сетевых данных должен быть построен до использования этим средством. | Network Dataset Layer |
out_workspace_location | Рабочая область базы геоданных, в которой создается объединенный набор сетевых данных. Рабочая область должна представлять базу геоданных ArcGIS 10 или более поздней версии и она должна отличаться от базы геоданных, в которой хранится входной набор сетевых данных. | Workspace |
Производные выходные данные
Имя | Объяснение | Тип данных |
out_network_dataset | В наборах сетевых данных с меньшим числом линейных объектов больше действующих проходимых элементов, что в результате приводит к более быстрому выполнению сетевого анализа. | Набор сетевых данных |
Пример кода
DissolveNetwork, пример 1 (окно Python)
Выполните инструмент с использованием всех параметров.
network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
out_gdb = "C:/Data/DissolvedNetwork.gdb"
arcpy.na.DissolveNetwork(network, out_gdb)
DissolveNetwork, пример 2 (рабочий процесс)
В следующем автономным скрипте Python показано, как с помощью инструмента DissolveNetwork можно создавать новый набор сетевых данных с меньшим количеством линейных объектов.
# Name: DissolveNetwork_Workflow.py
# Description: Creates a new network dataset with reduced number of line
# features in a new file geodatabase workspace. After dissolving,
# the network dataset is also built so that it can be used to
# perform network analyses.
# Requirements: Network Analyst Extension
#Import system modules
import arcpy
from arcpy import env
try:
#Check out the Network Analyst extension license
arcpy.CheckOutExtension("Network")
#Set environment settings
env.workspace = "C:/Data/SanFrancisco.gdb"
env.overwriteOutput = True
#Set local variables
network = "Transportation/Streets_ND"
out_folder = "C:/Data"
output_gdb_name = "SanFranciscoDissolved"
#Create a new file geodatabase that will contain the dissolved network
output_gdb = arcpy.management.CreateFileGDB(out_folder,
output_gdb_name).getOutput(0)
#Dissolve the network dataset
result = arcpy.na.DissolveNetwork(network, output_gdb)
#Get the path to the dissolved network dataset from the result object
dissolved_network = result.getOutput(0)
#The dissolved network dataset is unbuilt, so build it
arcpy.na.BuildNetwork(dissolved_network)
print("Script completed successfully")
except Exception as e:
# If an error occurred, print line number and error message
import traceback, sys
tb = sys.exc_info()[2]
print("An error occurred on line %i" % tb.tb_lineno)
print(str(e))
Параметры среды
Информация о лицензиях
- Basic: Требуется Network Analyst
- Standard: Требуется Network Analyst
- Advanced: Требуется Network Analyst