Resolver conflictos de edificio (Cartografía)
Resumen
Resuelve los conflictos de símbolo entre edificios y conflictos con respecto a las entidades de barrera lineales moviendo u ocultando los edificios.
Más información sobre cómo funciona Resolver conflictos de edificio.
Esta herramienta no produce capas de salida sino que altera las clases de entidad de origen de las capas de entrada. Si las capas de entrada están dibujadas con una representación (cuyo comportamiento de edición está configurado para almacenar excepciones de forma), las entidades modificadas se almacenan como excepciones de forma en la representación. Si la capa no está dibujada con una representación, se modifica la geometría de las entidades de entrada. Se recomienda utilizar representaciones cuando se trabaja con las herramientas de resolución de conflictos. De esa forma, si los resultados no son los esperados, o para volver a ejecutar la herramienta con parámetros diferentes, simplemente quite las excepciones usando la herramienta Quitar excepción. Se sugiere hacer una copia de las entidades de entrada si no está utilizando representaciones cuyo comportamiento de edición está configurado para almacenar excepciones de forma.
Si las entidades de entrada no están en un sistema de coordenadas proyectadas, aparecerá una advertencia. Esta herramienta depende de las unidades de distancia lineal, que crearán resultados inesperados en un sistema de coordenadas no proyectadas. Se sugiere ejecutar esta herramienta sobre datos en un sistema de coordenadas proyectadas para garantizar resultados válidos. Si el sistema de coordenadas falta o es desconocido, aparecerá un error y la herramienta no llevará a cabo el proceso.
Ilustración
Uso
-
Esta herramienta opera accediendo a conflictos de gráfico de entidades simbolizadas. La extensión de la simbología y la escala de referencia se tienen en cuenta en forma conjunta. Ejecute esta herramienta sólo después de finalizar la apariencia de los símbolos y asegúrese de que la escala de referencia corresponde a la escala de salida final pretendida.
-
El Campo de invisibilidad debe estar presente y tener el mismo nombre para todas las clases de entidad de entrada. A las entidades que deben permanecer visibles se les asigna un valor de 0; a las que se deben quitar de la pantalla se les asigna un valor de 1. Utilice una selección o una consulta de definición de capa para visualizar el conjunto simplificado resultante (es decir, invisibilidad <> 1). Puede utilizar varios campos de invisibilidad para almacenar resultados diferentes, correspondientes a las diferentes escalas de salida, en la misma clase de entidad.
Antes de que se evalúen los conflictos, los edificios poligonales se amplían hasta un tamaño mínimo especificado en el parámetro Tamaño de edificio mínimo permitido. El tamaño mínimo se mide como una distancia lineal a lo largo del lado más corto del cuadro de delimitación rotado para un mejor ajuste a la entidad. Para revisar el tamaño final de los edificios en los resultados de salida, agregue un campo doble o flotante denominado RBC_SIZE en cualquiera de las clases de entidad de edificio de entrada. A medida que la herramienta realice el proceso, este campo se actualizará con el lado más corto del cuadro de delimitación rotado alrededor de cada entidad.
-
El parámetro Campo de jerarquía es opcional. Si no se especifica, se asignará una importancia relativa a los edificios basada en el perímetro del edificio y la proximidad a las barreras. Los edificios más grandes que están más cerca a más de una barrera se evaluarán como más importantes que los edificios más pequeños relativamente alejados de una barrera. Puede utilizar un campo de jerarquía parcialmente completo dónde se atribuya un valor de jerarquía sólo a los edificios importantes y dónde todas las otras entidades (con un valor de jerarquía NULO) tengan una importancia relativa calculada internamente.
-
Si utiliza el parámetro Campo de jerarquía, puede forzar los edificios para que permanezcan visibles, asignándoles un valor de jerarquía de 0 (cero). La herramienta no podrá enmascararlos. Un edificio con una jerarquía de cero se considera localmente importante, por lo que los edificios cercanos pueden estar comprometidos más de lo debido si el edificio no fue forzado para permanecer visible. Los edificios de jerarquía cero se pueden transformar (mover, rotar o cambiar de tamaño) para resolver conflictos y cumplir con otros parámetros requeridos.
Todo edificio que esté geométricamente en conflicto con barreras (es decir, la geometría, no sólo la simbología, real se superpone con aquella de una entidad de barrera como una carretera) no se moverá fuera de la entidad de barrera. Estos edificios se pueden marcar para la creación de máscaras en el transcurso del proceso de resolución de conflictos, pero no se moverán. El conflicto permanecerá.
Si la simbología de las entidades de barrera no está distribuida simétricamente en la geometría; es decir, que el símbolo es más grueso en un lado de la línea que en el otro, es posible que aparezca un espacio más grande entre el edificio y la barrera en el lado de la barrera con la simbología más fina.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_buildings [in_buildings,...] |
Las capas de entrada que contienen entidades de edificio que pueden estar en conflicto, o que son más pequeñas que el tamaño permitido. Los edificios pueden ser puntos o polígonos. Los edificios se modificarán para resolver conflictos con otros edificios y entidades de barrera. | Layer |
invisibility_field |
El campo que almacena los valores de invisibilidad que se pueden utilizar para quitar algunos edificios de la visualización para resolver conflictos de símbolo. Los edificios con una valor de 1 se deben quitar de la visualización; los de valor cero, deben permanecer. Utilice una consulta de definición en la capa para visualizar sólo los edificios visibles. No se elimina ninguna entidad. | String |
in_barriers [[Layer, Boolean, Linear unit],...] |
Las capas que contienen las entidades de línea o polígono que son barreras de conflicto para las entidades de edificio de entrada. Los edificios se modificarán para resolver conflictos entre edificios y barreras. El valor Orientar es Booleano y especifica si los edificios deben orientarse hacia la capa de barrera. Espacio especifica la distancia a la cual los edificios deben moverse hacia la capa de barrera o alejarse de ella. Debe introducir una unidad con el valor.
Nota: Si no se introduce ninguna unidad con el valor Espacio (es decir, 10 en lugar de 10 metros), se usará la unidad lineal del sistema de coordenadas de la entidad de entrada. | Value Table |
building_gap |
La distancia mínima permitida entre los edificios simbolizados en escala. Los edificios que están más cerca se desplazarán u ocultarán para aplicar esta distancia. La distancia mínima permitida se establece en relación a la escala de referencia (es decir, 15 metros en una escala de 1:50.000). El valor es 0 si no está establecida la escala de referencia. | Linear unit |
minimum_size |
El tamaño mínimo permitido del lado más corto de un cuadro de delimitación rotado para un mejor ajuste alrededor de la entidad de edificio simbolizada en la escala de referencia. Los edificios con un lado de cuadro de delimitación más pequeño que este valor se ampliarán para alcanzarlo. Puede haber un cambio de tamaño no proporcionado que genere un cambio en la morfología del edificio. | Linear unit |
hierarchy_field (Opcional) |
El campo que contiene una clasificación jerárquica de importancia de entidad, donde 1 es muy importante y los enteros mayores reflejan una importancia decreciente. Un valor de 0 (cero) fuerza al edificio para que retenga la visibilidad, pero puede moverse levemente para resolver conflictos. Si no se usa este parámetro, la herramienta evaluará la importancia de las entidades basada en la longitud del perímetro y la proximidad a las entidades de barrera. | String |
Ejemplo de código
La siguiente secuencia de comandos de la ventana de Python muestra cómo utilizar la herramienta ResolveBuildingConflicts en el modo inmediato.
import arcpy from arcpy import env env.workspace = "C:/data" env.referenceScale = "50000" arcpy.ResolveBuildingConflicts_cartography("C:/data/footprints.lyr; C:/data/bldg_points.lyr", "invisible", "'C:/data/roads.lyr' 'true' '5 Meters';'C:/data/trails.lyr' 'false' '10 Meters';'C:/data/streams.lyr' 'false' '5 Meters'", "10 meters", "15 meters", "bldg_hierarchy")
Esta secuencia de comandos independiente muestra un ejemplo del uso de la herramienta ResolveBuildingConflicts.
# Name: ResolveBuildingConflicts_standalone_script.py # Description: Resolves the symbology conflicts between buildings and nearby barriers, in this case - roads # Import system modules import arcpy from arcpy import env # Set environment settings env.workspace = "C:/data" env.referenceScale = "50000" # Set local variables in_buildings = "C:/data/footprints.lyr;C:/data/bldg_points.lyr" invisibility_field = "invisible" in_barriers = "'C:/data/roads.lyr' 'true' '5 Meters';'C:/data/trails.lyr' 'false' '10 Meters';'C:/data/streams.lyr' 'false' '5 Meters'" building_gap = "10 meters" minimum_size = "15 meters" hierarchy_field = "bldg_hierarchy" # Execute Resolve Building Conflicts arcpy.ResolveBuildingConflicts_cartography(in_buildings, invisibility_field, in_barriers, building_gap, minimum_size, hierarchy_field)