Применить компоновку Направленная сила (Схема сети)

Сводка

Подчеркивает петли, присутствующие на схеме сети.

Более подробно об алгоритме компоновки Направленная сила

Внимание:

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

Примечание:

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

Использование

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

  • Входной слой схемы сети должен быть из инженерной сети или из сети трассировки в файловой базе геоданных или из сервиса схемы сети.

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

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

  • Рассмотрите возможность применения компоновки в асинхронном режиме на сервере при работе с очень большими схемами.

Синтаксис

arcpy.nd.ApplyForceDirectedLayout(in_network_diagram_layer, {are_containers_preserved}, {iterations_number}, {repel_factor}, {degree_freedom}, {breakpoint_position}, {edge_display_type}, {run_async})
ParameterОбъяснениеТип данных
in_network_diagram_layer

Схема сети, к которой будет применена компоновка.

Diagram Layer
are_containers_preserved
(Дополнительный)

Указывает, как алгоритм будет работать с контейнерами.

  • PRESERVE_CONTAINERS Алгоритм компоновки будет выполняться в верхнем графе схемы, чтобы сохранить контейнеры.
  • IGNORE_CONTAINERSАлгоритм компоновки будет выполняться для объектов схемы с содержимым и без. Это значение по умолчанию.
Boolean
iterations_number
(Дополнительный)

Количество итераций для обработки. Значение по умолчанию равно 20.

Long
repel_factor
(Дополнительный)

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

Double
degree_freedom
(Дополнительный)

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

  • LOWОбласть для перемещения соединений схемы будет ограниченной. Это значение по умолчанию.
  • HIGHОбласть для перемещения соединений схемы будет большой.
  • MEDIUMОбласть для перемещения соединений схемы будет умеренной.
String
breakpoint_position
(Дополнительный)

Относительное положение двух точек отражения, которые будут вставлены вдоль ребер диаграммы для вычисления геометрии изогнутых ребер, если для Типа отображения ребер задано значение Изогнутые ребра (edges_display_type = "CURVED_EDGES" в Python). Это процент между 15 и 100, значение по умолчанию - 30. Например, при значении Связанного местоположения точки разрыва (%) N между 15 и 40, верно следующее:

  • X -– это x-координата соединения «От» ребра, а Y – y-координата соединения «К» ребра для горизонтального дерева:
    • Первая точка отражения будет расположена на N% от длины сегмента [XY].
    • Вторая точка отражения будет расположена на (100 - N%) от длины сегмента [XY].
  • Y – это y-координата соединения «От» ребра, а X -– x-координата соединения «К» ребра для вертикального дерева:
    • Первая точка отражения будет расположена на N% от длины сегмента [YX].
    • Вторая точка отражения будет расположена на (100 - N%) от длины сегмента [XY].

Примечание:

Обозначение соединений «От» и «До» выше связано с направлением дерева; оно не относится к топологии ребра объекта сети.

Этот параметр игнорируется, когда Тип отображения ребер задан как Нормальные ребра (edges_display_type = "REGULAR_EDGES" в Python).

Double
edge_display_type
(Дополнительный)

Задает тип отображения для ребер схемы.

  • REGULAR_EDGESВсе ребра схемы отображаются как прямые линии. Это значение по умолчанию.
  • CURVED_EDGESВсе ребра схемы – кривые.
String
run_async
(Дополнительный)

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

  • RUN_ASYNCHRONOUSLYАлгоритм компоновки будет выполняться асинхронно на сервере. Эта опция выделяет ресурсы сервера для запуска алгоритма компоновки с более длительным временем ожидания. Асинхронный запуск применяется при использовании компоновок, на которые затрачивается большое количество времени и возможно превышение времени ожидания сервера (например, компоновки Частично перекрывающиеся ребра), и применении их к большим схемам, содержащим более 25 000 объектов.
  • RUN_SYNCHRONOUSLYАлгоритм компоновки будет выполняться синхронно на сервере. Он может завершиться без результата, если время выполнения превысит тайм-аут сервиса, по умолчанию равный 600 секундам. Это значение по умолчанию.
Boolean

Производные выходные данные

NameОбъяснениеТип данных
out_network_diagram_layer

Обновленный слой схемы сети.

Слой схемы

Пример кода

ApplyForceDirectedLayout, пример (окно Python)

Применение алгоритма компоновки Направленная сила к схеме Temporary Diagram.

import arcpy
arcpy.ApplyForceDirectedLayout_nd("Temporary Diagram", "PRESERVE_CONTAINERS", 
                                  20, 1, "LOW", 25, "CURVED_EDGES", 
                                  "RUN_SYNCHRONOUSLY")

Environments

Этот инструмент не использует параметры среды геообработки

Информация о лицензиях

  • Basic: Нет
  • Standard: Да
  • Advanced: Да

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