Доступно с лицензией Network Analyst.
Краткая информация
Создает новый набор сетевых данных, уменьшая количество линейных объектов до минимального необходимого для корректного моделирования входного набора сетевых данных. Получаемый на выходе более эффективный набор сетевых данных требует меньше времени для выполнения анализа, отрисовки результатов и создания путевых листов. Инструмент создает набор сетевых данных и классы объектов источников; при этом входной набор сетевых данных с его объектами источников остаются неизменными.
Более подробно о том, как работает инструмент Слияние сети (Dissolve Network)Рисунок
Использование
Этот инструмент не создает готовую сеть. Для создания нового набора сетевых данных перед выполнение анализа используйте инструмент Построить сеть (Build Network).
Набор сетевых данных и классы объектов, созданные в выходной рабочей области базы геоданных имеют одни и те же имена набора классов объектов, набора сетевых данных и класс объектов. Инструмент не запустится, если в рабочей области базы геоданных уже существует хоть один набор данных с таким именем.
В выходной класс линейных объектов переносятся только те поля из входных классов объектов, которые используются в наборе сетевых данных. Примеры полей:
- Поля высоты объектов сети
- Поля, используемые в функциях вычисления атрибутов сетей (длина, время, ограничения движения, иерархия и пр.)
- Поля, используемые при создании путевых листов (названия улиц, дорожные указательные знаки и пр.)
Синтаксис
DissolveNetwork_na (in_network_dataset, out_workspace_location)
Параметр | Объяснение | Тип данных |
in_network_dataset | Набор сетевых данных, в котором будет произведено слияние ребер. Входной набор сетевых данных должен храниться в файловой или персональной базе геоданных с одним источником ребер. Допускается наличие любого количества источников соединений и источников поворотов. Источник ребер должен содержать следующие объекты:
Входной набор сетевых данных должен быть построен до использования этого инструмента. | Network Dataset Layer |
out_workspace_location | Рабочая область базы геоданных, в которой будет создан набор сетевых данных с объединенными ребрами. Рабочая область должна представлять базу геоданных ArcGIS 10 или более поздней версии, и это должна быть другая база геоданных, а не та же база геоданных, в которой хранится входной набор сетевых данных. | Workspace |
Пример кода
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 occured on line %i" % tb.tb_lineno)
print(str(e))
Параметры среды
Информация о лицензировании
- ArcGIS for Desktop Basic: Требует Network Analyst
- ArcGIS for Desktop Standard: Требует Network Analyst
- ArcGIS for Desktop Advanced: Требует Network Analyst