Aplicar diseño de anillo principal (Diagrama de red)

Resumen

Incorpora las entidades de diagrama a un diagrama de red en un anillo principal.

Más información acerca del algoritmo de diseño Anillo 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 las entidades de diagrama alrededor del anillo principal y dispone jerárquicamente el subconjunto de entidades de diagrama conectadas a cada cruce de diagrama ubicado a lo largo del anillo principal.

    El anillo principal es el bucle formado por el número más grande de ejes en el diagrama de red.

    Si el diagrama de red no contiene ningún bucle, la ejecución del algoritmo de diseño Anillo principal no surte ningún efecto.

  • Este algoritmo de diseño se suele utilizar en la industria de las telecomunicaciones.

  • Si se especifican barreras en entidades de diagrama, el algoritmo de diseño Anillo principal identifica el anillo principal que excluirá estas entidades marcadas.

  • Plantéese aplicar el diseño en modo asíncrono en el servidor al trabajar en diagramas muy grandes.

Sintaxis

arcpy.nd.ApplyMainRingLayout(in_network_diagram_layer, {are_containers_preserved}, {ring_type}, {is_unit_absolute}, {ring_width_absolute}, {ring_width_proportional}, {ring_height_absolute}, {ring_height_proportional}, {tree_type}, {perpendicular_absolute}, {perpendicular_proportional}, {along_absolute}, {along_proportional}, {breakpoint_position}, {edge_display_type}, {run_async}, {offset_absolute}, {offset_proportional})
ParámetroExplicaciónTipo 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.

  • PRESERVE_CONTAINERS El algoritmo de diseño se ejecutará en el gráfico superior del diagrama, de modo que los contenedores se conservan.
  • IGNORE_CONTAINERSEl algoritmo de diseño se ejecutará tanto en las entidades de contenido como en las entidades sin contenido del diagrama. Esta es la opción predeterminada.
Boolean
ring_type
(Opcional)

Especifica el tipo de anillo.

  • ELLIPSELas entidades de diagrama del anillo principal detectado se visualizarán en una elipse. Esta es la opción predeterminada.
  • RECTANGLELas entidades de diagrama del anillo principal detectado se visualizarán en un rectángulo.
String
is_unit_absolute
(Opcional)

Especifica cómo se interpretarán los parámetros que representan distancias.

  • ABSOLUTE_UNITEl algoritmo de diseño interpretará los valores de distancia como unidades lineales.
  • PROPORTIONAL_UNITEl algoritmo de diseño interpretará los valores de distancia como unidades relativas a una estimación de la media de los tamaños de los cruces de la extensión del diagrama actual. Esta es la opción predeterminada.
Boolean
ring_width_absolute
(Opcional)

El ancho del anillo. El valor predeterminado está en las unidades del sistema de coordenadas del diagrama. Este parámetro solo se puede usar con unidades absolutas.

Linear Unit
ring_width_proportional
(Opcional)

El ancho del anillo. El valor predeterminado es 50. Este parámetro solo se puede usar con unidades proporcionales.

Double
ring_height_absolute
(Opcional)

La altura del anillo. El valor predeterminado está en las unidades del sistema de coordenadas del diagrama. Este parámetro solo se puede usar con unidades absolutas.

Linear Unit
ring_height_proportional
(Opcional)

La altura del anillo. El valor predeterminado es 20. Este parámetro solo se puede usar con unidades proporcionales.

Double
tree_type
(Opcional)

Especifica cómo se colocan los árboles que salen de los cruces del anillo principal.

  • BOTH_SIDESCada árbol se mostrará a lo largo de una línea principal, y sus ramas relacionadas se colocarán a los lados izquierdo y derecho de esta línea principal.
  • LEFT_SIDECada árbol se mostrará de manera jerárquica a lo largo de una línea principal, y sus ramas relacionadas se colocarán a la izquierda de esta línea principal.
  • RIGHT_SIDECada árbol se mostrará de manera jerárquica a lo largo de una línea principal, y sus ramas relacionadas se colocarán a la derecha de esta línea principal.
  • SMART_TREECada árbol se mostrará de manera jerárquica como árbol inteligente. Esta es la opción predeterminada.
String
perpendicular_absolute
(Opcional)

El espaciado entre los cruces de diagrama que se visualizan en perpendicular a la dirección del árbol y pertenecen al mismo nivel de subárbol. El valor predeterminado es de 2 en las unidades del 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 visualizan en perpendicular a la dirección del árbol y pertenecen al mismo nivel de subárbol. 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 dirección del árbol. El valor predeterminado es de 2 en las unidades del sistema de coordenadas del diagrama. Este parámetro solo se puede usar con unidades absolutas.

Linear Unit
along_proportional
(Opcional)

El espaciado entre los cruces de diagrama que se muestran a lo largo de la dirección del árbol. El valor predeterminado es 2. Este parámetro solo se puede usar con unidades proporcionales.

Double
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.

  • Con un valor de 0 en Posición relativa de punto de corte (%), el punto de corte se posiciona en la coordenada x del cruce de origen del eje y la coordenada y del cruce de destino del eje si se trata de un árbol horizontal. Se posiciona en la coordenada y del cruce de origen del eje y en la coordenada x del cruce de destino del eje si se trata de un árbol vertical.
  • Con un valor de 100 en Posición relativa de punto de corte (%), no se inserta ningún punto de corte en los ejes del diagrama; todos los ejes del diagrama se conectan directamente a sus cruces de origen y destino.
  • Con un valor N de entre 0 y 100 en Posición relativa de punto de corte (%), el punto de corte se posiciona en el N% de la longitud del segmento [XY], siendo X la coordenada x del cruce de origen del eje e Y la coordenada y del cruce de destino del eje si se trata de un árbol horizontal. Se posiciona en el N% de la longitud del segmento [YX], siendo Y la coordenada y del cruce de origen del eje y X la coordenada x del cruce de destino del eje si se trata de un árbol vertical.

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:

  • Siendo X la coordenada x del cruce de origen del eje e Y siendo la coordenada y del cruce de destino del eje para un árbol horizontal:
    • El primer punto de inflexión se posicionará en N % de la longitud del segmento [XY].
    • El segundo punto de inflexión se posicionará en (100 - N) % de la longitud del segmento [XY].
  • Siendo Y la coordenada y del cruce de origen del eje y X siendo la coordenada x del cruce de destino del eje para un árbol vertical:
    • El primer punto de inflexión se posicionará en N % de la longitud del segmento [YX].
    • El segundo punto de inflexión se posicionará en (100 - N) % de la longitud del segmento [XY].

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.

  • REGULAR_EDGESTodos los ejes de diagrama relacionados con las ramas del árbol no se visualizarán con ángulos rectos. Esta es la opción predeterminada.
  • ORTHOGONAL_EDGESTodos los ejes del diagrama relacionados con las ramas del árbol se visualizarán con ángulos rectos.
  • CURVED_EDGESTodos los ejes de diagrama relacionados con las ramas del árbol estarán curvados.
String
run_async
(Opcional)

Especifica si el algoritmo de diseño se ejecutará de forma asíncrona o síncrona en el servidor.

  • RUN_ASYNCHRONOUSLYEl algoritmo de diseño se ejecutará de forma asíncrona en el servidor. Esta opción dedica recursos del servidor a ejecutar el algoritmo de diseño con un tiempo límite más largo. Se recomienda la ejecución asíncrona al ejecutar diseños que tardan y podrían rebasar el tiempo límite del servidor (por ejemplo, ejes parcialmente superpuestos) y al aplicar diagramas grandes (más de 25.000 entidades).
  • RUN_SYNCHRONOUSLYEl algoritmo de diseño se ejecutará de forma síncrona en el servidor. Puede fallar sin completarse si su ejecución supera el tiempo límite de servicio: 600 segundos de manera predeterminada. Esta es la opción predeterminada.
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

NombreExplicaciónTipo de datos
out_network_diagram_layer

La capa de diagrama de red actualizada.

Capa de diagrama

Muestra de código

Ejemplo de ApplyMainRingLayout (ventana de Python)

Este ejemplo aplica el algoritmo de diseño Anillo principal al diagrama denominado Diagrama temporal.

import arcpy
arcpy.ApplyMainRingLayout_nd("Temporary Diagram", "PRESERVE_CONTAINERS", 
                             "ELLIPSE", "PROPORTIONAL_UNIT", "", 50, "", 20, 
                             "SMART_TREE", "", 2, "", 2, 25, "CURVED_EDGES", 
                             "RUN_SYNCHRONOUSLY")

Entornos

Esta herramienta no utiliza ningún entorno de geoprocesamiento.

Información de licenciamiento

  • Basic: No
  • Standard: Sí
  • Advanced: Sí

Temas relacionados