Resumen
Organiza jerárquicamente los cruces y ejes del diagrama a lo largo de una línea principal.
Más información acerca del algoritmo de diseño Árbol de línea principal
Precaución:
Si tiene una sesión de edición abierta, debe guardar sus ediciones antes de ejecutar esta herramienta. Con ello se garantiza que el diagrama refleje los cambios más recientes aplicados a la topología de red en la base de datos. Si no guarda las ediciones, estas no se reflejarán en el diagrama.
Nota:
Todos los algoritmos de diseño incluyen valores predeterminados para los parámetros. Los valores predeterminados de los parámetros son los que se usan mientras no se especifique otro valor. Si el diagrama de red de entrada se basa en una plantilla para la cual este diseño tiene configurado otro valor de parámetro, se utiliza en su lugar este valor.
Uso
Esta herramienta no se admite al trabajar con una conexión de base de datos a una red de servicios o red de trazado de una geodatabase corporativa. Debe usar el servicio de red de servicios o red de trazado publicado relacionado o una red de servicios o red de trazado de una geodatabase de archivos.
La capa de diagrama de red de entrada debe provenir de una red de servicios o una red de trazado de una geodatabase de archivos o un servicio de diagramas de red.
Este algoritmo de diseño ordena jerárquicamente los cruces y los bordes del diagrama de red de entrada a lo largo de una línea principal y coloca sus ramas relacionadas en el lado izquierdo, en el lado derecho o a ambos lados de la línea principal.
Es posible especificar cruces raíz y finales en el diagrama, de forma que el algoritmo de diseño Árbol de línea principal cree una línea principal comenzando en un cruce raíz especificado y terminando en un cruce final especificado.
- De forma predeterminada, si no se especifica ningún cruce raíz ni final, el algoritmo identifica el cruce de diagrama asociado con el índice más bajo de la topología de red. Comenzando por este cruce que representa la raíz, el algoritmo busca una línea compuesta del mayor número posible de ejes: la línea principal.
- Cuando se define un cruce raíz, la línea principal es una de las ramas compuestas del mayor número posible de ejes a partir de este cruce raíz.
- Si se especifican los cruces raíz y final y existe una ruta entre ellos, la línea principal es la rama compuesta del mayor número posible de ejes de diagrama comenzando por este cruce raíz y terminando en este cruce final.
Si su diagrama de red consta de varias partes de diagrama desconectadas, puede definir varios cruces raíz y finales, por ejemplo, uno por cada parte del diagrama.
También es posible especificar como raíces varios cruces pertenecientes a la misma parte de diagrama conectada. Todos ellos se alinean a lo largo del mismo eje, en perpendicular a la dirección del árbol, y aparecen como puntos de inicio diferentes para la rama de árbol del diagrama. Para los cruces finales, aunque nada le impide especificar varios extremos de una misma parte de diagrama conectada, el sistema identifica solo uno de ellos como cruce final.
Si se especifica un cruce final, pero no se especifica ningún cruce raíz, el cruce final se omite.
Plantéese aplicar el diseño en modo asíncrono en el servidor al trabajar en diagramas muy grandes.
Sintaxis
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})
Parámetro | Explicación | Tipo de datos |
in_network_diagram_layer | El diagrama de red al que se aplica el diseño. | Diagram Layer |
are_containers_preserved (Opcional) | Especifica cómo procesará el algoritmo los contenedores.
| Boolean |
tree_direction (Opcional) | Especifica la dirección de la línea principal.
| String |
branches_placement (Opcional) | Especifica cómo se posicionarán relativamente las ramas de la línea principal respecto de su dirección.
| String |
is_unit_absolute (Opcional) | Especifica cómo se interpretarán los parámetros que representan distancias.
| Boolean |
perpendicular_absolute (Opcional) | El espaciado entre los cruces de diagrama que se muestran a lo largo del eje, en perpendicular a la línea principal. El valor predeterminado es de 2 en el sistema de coordenadas del diagrama. Este parámetro solo se puede usar con unidades absolutas. | Linear Unit |
perpendicular_proportional (Opcional) | El espaciado entre los cruces de diagrama que se muestran a lo largo del eje, en perpendicular a la línea principal. El valor predeterminado es 2. Este parámetro solo se puede usar con unidades proporcionales. | Double |
along_absolute (Opcional) | El espaciado entre los cruces de diagrama que se muestran a lo largo de la línea principal, así como el espaciado entre los cruces de diagrama que se muestran a lo largo del eje paralelo a la línea principal. Este parámetro solo se puede usar con unidades absolutas. El valor predeterminado es de 2 en las unidades del sistema de coordenadas del diagrama. | Linear Unit |
along_proportional (Opcional) | El espaciado entre los cruces de diagrama que se muestran a lo largo de la línea principal, así como el espaciado entre los cruces de diagrama que se muestran a lo largo del eje paralelo a la línea principal. Este parámetro se usa con unidades proporcionales. El valor predeterminado es 2. | Double |
disjoined_graph_absolute (Opcional) | El espaciado mínimo que separará las entidades pertenecientes a gráficos inconexos si el diagrama contiene este tipo de gráficos. Este parámetro se usa con unidades absolutas. El valor predeterminado es de 4 en las unidades del sistema de coordenadas del diagrama. | Linear Unit |
disjoined_graph_proportional (Opcional) | El espaciado mínimo que separará las entidades pertenecientes a gráficos inconexos si el diagrama contiene este tipo de gráficos. Este parámetro se usa con unidades proporcionales. El valor predeterminado es 4. | Double |
are_edges_orthogonal (Opcional) | Especifica cómo se visualizarán los ejes de diagrama relacionados con las ramas del árbol. Heredado:Este parámetro está obsoleto desde ArcGIS Pro 2.7. Se ignora sistemáticamente con independencia de su valor si se especifica el parámetro edge_display_type. Sin embargo, para mantener la compatibilidad con ArcGIS Pro 2.1, permanece habilitado si no se especifica el parámetro edge_display_type.
| Boolean |
breakpoint_position (Opcional) | La posición relativa del punto de corte que se insertará a lo largo de los ejes de diagrama cuando Tipo de visualización del eje sea Ejes regulares (edge_display_type = "REGULAR_EDGES" en Python) o Tipo de visualización del eje sea Ejes ortogonales (edge_display_type = "ORTHOGONAL_EDGES" en Python). Se trata de un porcentaje de entre 0 y 100.
La posición relativa de los dos puntos de inflexión que se insertarán a lo largo de los ejes de diagrama para calcular la geometría de los ejes curvados si el Tipo de visualización del eje es Ejes curvados (edge_display_type = "CURVED_EDGES" en Python). Se trata de un porcentaje de entre 15 y 40. Con un valor de N de Posición relativa del punto de corte (%) entre 15 y 40:
Nota:El concepto de los cruces de origen y destino mencionado anteriormente es relativo a la dirección del árbol; no guarda relación alguna con la topología real de la entidad de eje ni con el objeto de eje en la red. | Double |
edge_display_type (Opcional) | Especifica el tipo de visualización de los ejes de diagrama en relación con las ramas del árbol.
| String |
run_async (Opcional) | Especifica si el algoritmo de diseño se ejecutará de forma asíncrona o síncrona en el servidor.
| Boolean |
offset_absolute (Opcional) | El desplazamiento utilizado para separar los segmentos superpuestos con is_unit_absolute = "ABSOLUTE_UNIT" y edge_display_type = "ORTHOGONAL_EDGES". El valor no puede rebasar el 10 por ciento del valor más pequeño especificado para los otros parámetros de espaciamiento. El valor predeterminado es 0. | Linear Unit |
offset_proportional (Opcional) | El desplazamiento utilizado para separar los segmentos superpuestos con is_unit_absolute = "PROPORTIONAL_UNIT" y edge_display_type = "ORTHOGONAL_EDGES". Es un valor doble que no puede rebasar el 10 por ciento del valor más pequeño especificado para los otros parámetros de espaciamiento. El valor predeterminado es 0. | Double |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_network_diagram_layer | La capa de diagrama de red actualizada. | Capa de diagrama |
Muestra de código
Aplicar el algoritmo de diseño Árbol de línea principal al diagrama denominado Diagrama temporal.
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", "")
Entornos
Información de licenciamiento
- Basic: No
- Standard: Sí
- Advanced: Sí