Сводка
Иерархически выравнивает соединения и ребра схемы вдоль главной линии.
Более подробно об алгоритме компоновки Дерево главной линии
Внимание:
Если вы открыли сеанс редактирования, вы должны сохранить изменения перед запуском этого инструмента. Это гарантирует, что схема отразит последние изменения, внесенные в топологию сети в базе данных. Если вы не сохранили изменения, то изменения не появятся в схеме.
Примечание:
Каждый алгоритм компоновки включает значения параметров по умолчанию. Значение параметра по умолчанию будет использоваться, пока не будет задан другой. Если входная схема сети основана на шаблоне, для которого эта компоновка была настроена с другим значением параметра, то будет использоваться именно этот параметр.
Использование
Этот инструмент не поддерживается при работе с подключением базы данных к инженерной сети или сети трассировки в многопользовательской базе геоданных. Вы должны использовать либо связанный опубликованный сервис инженерной сети или сети трассировки, либо инженерную сеть или сеть трассировки из файловой базы геоданных.
Входной слой схемы сети должен быть из инженерной сети или из сети трассировки в файловой базе геоданных или из сервиса схемы сети.
Этот алгоритм компоновки иерархически упорядочивает ребра и соединения входной схемы сети вдоль основной линии и размещает ее связанные ветви или с обеих сторон, или с левой, или с правой стороны от основной линии.
На схеме могут указываться корневые и конечные соединения, чтобы алгоритм компоновки Дерево главной линии построил главную линию, начинающуюся в определенном корневом соединении и заканчивающуюся в указанном конечном соединении.
- По умолчанию, если корневое и конечное соединения не заданы, алгоритм выбирает соединение, связанное с наименьшим индексом топологии инженерной сети. Начиная от этого соединения, представляющего собой корень, алгоритм проводит поиск линии, состоящей из наибольшего числа ребер, то есть основной линии.
- Когда корневое соединение задано, главная линия является ответвлением, состоящим из наибольшего число ребер, которое начинается от этого корневого соединения.
- Если заданы и корневое, и конечное соединения и между ними имеется путь, главная линия является ответвлением, состоящим из наибольшего количества ребер схемы, начинающихся от этого корневого соединения и заканчивающихся на конечном.
Если схема сети состоит из нескольких несвязанных частей, можно задать несколько корневых и конечных соединений, например, по одному для каждой части схемы.
В качестве коренных могут быть заданы несколько соединений, которые относятся к одной и той же подключенной части схемы. Все они выровнены вдоль одной общей оси, перпендикулярно направлению дерева, и выглядят, как разные стартовые точки для ответвлений схемы. В случае с конечными соединениями, хотя ничто не мешает пользователю задать несколько таких соединений в одной и той же подключенной части схемы, система примет за конечное соединение только одно из них.
Если задано конечное соединение, но не задано корневое, конечный узел будет игнорироваться.
Рассмотрите возможность применения компоновки в асинхронном режиме на сервере при работе с очень большими схемами.
Синтаксис
arcpy.nd.ApplyMainlineTreeLayout(in_network_diagram_layer, {are_containers_preserved}, {tree_direction}, {branches_placement}, {is_unit_absolute}, {perpendicular_absolute}, {perpendicular_proportional}, {along_absolute}, {along_proportional}, {disjoined_graph_absolute}, {disjoined_graph_proportional}, {are_edges_orthogonal}, {breakpoint_position}, {edge_display_type}, {run_async}, {offset_absolute}, {offset_proportional})
Parameter | Объяснение | Тип данных |
in_network_diagram_layer | Схема сети, к которой будет применена компоновка. | Diagram Layer |
are_containers_preserved (Дополнительный) | Указывает, как алгоритм будет работать с контейнерами.
| Boolean |
tree_direction (Дополнительный) | Определяет направление основной линии.
| String |
branches_placement (Дополнительный) | Указывает способ относительного размещения ветвей, отходящих от основной линии, в соответствии с их направлением.
| String |
is_unit_absolute (Дополнительный) | Задает, как будут интерпретироваться параметры, представляющие расстояния.
| Boolean |
perpendicular_absolute (Дополнительный) | Расстояния между соединениями схемы, которые отображаются вдоль оси, перпендикулярно главной линии. По умолчанию используется 2 единицы в системе координат схемы. Этот параметр может выражаться только в абсолютных единицах. | Linear Unit |
perpendicular_proportional (Дополнительный) | Расстояния между соединениями схемы, которые отображаются вдоль оси, перпендикулярно главной линии. Значение по умолчанию равно 2. Этот параметр может выражаться только в относительных единицах. | Double |
along_absolute (Дополнительный) | Расстояние между соединениями схемы, которые отображаются вдоль главной линии, а также расстояние между соединениями схемы, которые отображаются вдоль оси, параллельной главной линии. Этот параметр может выражаться только в абсолютных единицах. По умолчанию используется 2 единицы в системе координат схемы. | Linear Unit |
along_proportional (Дополнительный) | Расстояние между соединениями схемы, которые отображаются вдоль главной линии, а также расстояние между соединениями схемы, которые отображаются вдоль оси, параллельной главной линии. Этот параметр используется для пропорциональных единиц измерения. Значение по умолчанию равно 2. | Double |
disjoined_graph_absolute (Дополнительный) | Минимальный отступ, который будет разделять объекты, принадлежащие к разъединенным графам, когда схема содержит такие графы. Этот параметр используется для абсолютных единиц измерения. Значение по умолчанию – 4 единиц в системе координат схемы. | Linear Unit |
disjoined_graph_proportional (Дополнительный) | Минимальный отступ, который будет разделять объекты, принадлежащие к разъединенным графам, когда схема содержит такие графы. Этот параметр используется для пропорциональных единиц измерения. Значение по умолчанию равно 4. | Double |
are_edges_orthogonal (Дополнительный) | Задает, как будут отображаются ребра схемы, связанные с ветвями дерева. Прежние версии:В ArcGIS Pro 2.7 параметр отнесен к устаревшим. Он систематически игнорируется, независимо от своего значения, если задан параметр edge_display_type. Однако для сохранения совместимости с ArcGIS Pro 2.1, он остается включенным, если параметр edge_display_type не указан.
| Boolean |
breakpoint_position (Дополнительный) | Относительное положение точки перегиба, которая будет вставлена на ребра схемы, если Тип отображения ребер задан как Нормальные ребра (edge_display_type = "REGULAR_EDGES" in Python) или Тип отображения ребер задан как Ортогональные ребра (edge_display_type = "ORTHOGONAL_EDGES" in Python). Значение дается в процентах от 0 до 100.
Относительное положение двух точек перегиба, которые будут вставлены на ребрах схемы для вычисления геометрии изогнутых ребер, если для Типа отображения ребер задано значение Изогнутые ребра (edge_display_type = "CURVED_EDGES" в Python). Значение дается в процентах от 15 до 40. При значении Связанного местоположения точки разрыва (%) N между 15 и 40:
Примечание:Указанная выше концепция соединений «От» и «До» связана с направлением дерева; это не относится к реальной топологии объекта в сети. | Double |
edge_display_type (Дополнительный) | Задает тип отображения ребер схемы, связанных с ветвями дерева.
| String |
run_async (Дополнительный) | Указывает, будет ли алгоритм компоновки выполняться асинхронно или синхронно на сервере.
| Boolean |
offset_absolute (Дополнительный) | Смещение, используемое для разделения перекрывающихся сегментов, когда заданы is_unit_absolute = "ABSOLUTE_UNIT" и edge_display_type = "ORTHOGONAL_EDGES". Это значение не может превышать 10 процентов от наименьшего значения, указанного для других параметров интервала. Значение по умолчанию равно 0. | Linear Unit |
offset_proportional (Дополнительный) | Смещение, используемое для разделения перекрывающихся сегментов, когда заданы is_unit_absolute = "PROPORTIONAL_UNIT" и edge_display_type = "ORTHOGONAL_EDGES". Это значение double не может превышать 10 процентов от наименьшего значения, указанного для других параметров интервала. Значение по умолчанию равно 0. | Double |
Производные выходные данные
Name | Объяснение | Тип данных |
out_network_diagram_layer | Обновленный слой схемы сети. | Слой схемы |
Пример кода
Применение алгоритма компоновки Дерево главной линии к схеме Temporary Diagram.
import arcpy
arcpy.ApplyMainlineTreeLayout_nd("Temporary Diagram", "PRESERVE_CONTAINERS",
"FROM_LEFT_TO_RIGHT", "BOTH_SIDES",
"ABSOLUTE_UNIT", "100 Feet", "" , "100 Feet",
"", "200 Feet", "", "", 30, "ORTHOGONAL_EDGES",
"RUN_SYNCHRONOUSLY", "10 Feet", "")
Environments
Информация о лицензиях
- Basic: Нет
- Standard: Да
- Advanced: Да