Cómo funciona Limpiar (cobertura)
Limpiar crea la topología para coberturas de polígono o línea.
Cuando crea la topología de polígono:
- Se crea la topología de polígono y una tabla de atributos del polígono (PAT). Si hay una AAT, se actualiza automáticamente. También se crea un polígono adicional, el polígono universal o de fondo.
- Se requieren puntos de etiqueta si desea Id. de usuario de polígono distintos a cero y si desea mantener los atributos del polígono. Si un polígono tiene más de un punto de etiqueta, se elige arbitrariamente uno para asignarle el Id. de usuario.
- Se mantienen los sistemas de ruta y SEC y RAT se actualizan con ajustes para dividir y volver a numerar los arcos. Las rutas y secciones se eliminan si se adjuntan a los arcos que están fusionados debido a la configuración de tolerancia difusa.
- Las secciones se dividen y se actualizan sus arcos y medidas en los arcos.
- La topología de región se mantiene. Si la cobertura de entrada tiene una topología de región preliminar, se crea una PAT y PAT<subclass>.
Cuando crea la topología de línea:
- Se crea o actualiza la topología de nodo y arco, y una AAT.
- Las PAT existentes no se actualizan.
- Se mantienen los sistemas de ruta y SEC y RAT se actualizan con ajustes para dividir y volver a numerar los arcos. Las rutas y secciones se eliminan si se adjuntan a los arcos que están fusionados debido a la configuración de tolerancia difusa.
- Las secciones se dividen y se actualizan sus arcos y medidas en los arcos.
- Se eliminan las regiones y subclases de regiones.
Limpiar crea un polígono y una topología de nodo y arco al realizar un análisis geométrico en los arcos y puntos de etiqueta de la cobertura para identificar los nodos y polígonos de la cobertura. A continuación, se describen las operaciones de análisis geométrico específicas que realiza Limpiar.
Limpiar busca intersecciones entre arcos, divide los arcos y codifica las intersecciones como nodos (es decir, los extremos del arco).
Durante la limpieza, se alinean dos o más coordenadas de arco dentro de la tolerancia difusa de cada una (por ejemplo, se convierten en el mismo punto de coordenadas). No se realiza ninguna distinción entre las coordenadas de arco interior y los nodos, o entre los arcos. Debido a que la tolerancia difusa mueve vértices de arco, es importante comprender su relación con la resolución de la cobertura. Consulte Configurar tolerancias para Limpiar a continuación.
Limpiar crea un polígono y una topología de nodo y arco al identificar áreas encerradas por arcos, y crea la lista de arcos que definen el límite de cada polígono. Además, numera los nodos y establece el nodo de origen y el nodo de destino para cada arco, así como los números de polígonos internos a la izquierda y a la derecha de cada arco. Los números de polígonos internos se establecen en 0 para la opción LINE.
Set of arcs enclosing each polygon Polygon number Number of Arcs Arc numbers 1 4 1,2,9,4 2 4 1,3,5,4 3 4 2,8,6,3 4 4 6,8,9,5
Polygons to the left and right of each arc Arc number From-node To-node Left Poly Right Poly 1 1 2 1 2 2 2 7 1 3 3 2 3 3 2 4 4 1 1 2 5 4 3 2 4 6 5 3 4 3 7 5 6 3 3 8 7 5 4 3 9 7 4 1 4
Limpiar compara la longitud de los arcos colgantes con la longitud de arco colgante y elimina las que son más cortas que esa longitud. Un arco colgante es un arco que tiene el mismo número interno del polígono tanto en el lado izquierdo como en el derecho, y termina en un nodo colgante.
Polygons to the left and right of each arc Arc number Left poly Right poly Length 1 1 2 5.0 2* 1 1 0.2 3 1 3 8.8 4 2 3 1.2 5* 2 2 0.2 6 2 4 1.3 7* 1 1 0.2 8 4 3 1.9 9* 3 3 1.5 10 4 3 1.9 11* 1 1 0.2 12 4 1 3.1 * Dangling arcs + Arc length is longer than dangle length = 1.0
Basado en la longitud de arco colgante especificada, el arco 9 se mantuvo en la cobertura, mientras que los arcos 2, 5, 7 y 11 se quitaron.
Para la opción POLY, Limpiar busca un punto de etiqueta dentro de cada polígono que se puede utilizar para asignar un Id. de usuario a cada polígono. A los polígonos que no tienen puntos de etiqueta se les asignan Id. de usuario de cero. Si un polígono contiene más de un punto de etiqueta, se elige arbitrariamente una de las etiquetas para asignar un Id. de usuario al polígono.
Polygon Internal no. Polygon User-ID 1 0 2 101 3 102 4 0
Limpiar crea una PAT o AAT según la opción que se utiliza. Limpiar calcula el área y el perímetro para cada polígono, y almacena esta información junto con el número interno de polígono e Id. de usuario en la PAT. Si la cobertura de entrada tiene una PAT, el número interno original del polígono se utiliza para unir cualquier elemento adicional en la PAT con la PAT de cobertura de salida.
EXCOV.PAT before Clean AREA PERIMETER EXCOV# EXCOV-ID COVER-TYPE -25.0 20.0 1 0 2.0 7.5 2 0 Shrub 3.0 9.0 3 13 Trees 9.0 11.0 4 10 Grass 3.5 8.0 5 13 Forest 1.0 2.5 6 0 Water 4.5 9.0 7 14 Shrub 2.0 5.0 8 0 Forest
EXCOV.PAT after Clean AREA PERIMETER EXCOV# EXCOV-ID COVER-TYPE -25.0 20.0 1 0 2.0 7.5 2 0 3.0 9.0 3 13 Trees 9.0 11.0 4 10 Grass 3.5 8.0 5 13 Forest 1.0 2.5 6 0 Water 4.5 9.0 7 14 Shrub 2.0 5.0 8 0
Cuando se utiliza Limpiar con la opción POLY, se recomiendan los puntos de etiqueta de polígono, si bien no son necesarios. Las etiquetas de polígono se utilizan para retener los atributos a través de Limpiar. Aunque no se requiere, se recomienda que estos puntos de etiqueta tengan ID únicos.
Después de construir esta cobertura, se mantuvieron los valores de atributo COVER-TYPE para todos los polígonos que tienen puntos de etiqueta; los atributos en los polígonos sin etiquetas no se mantuvieron.
Para la opción LINE, Limpiar crea automáticamente atributos de línea (por ejemplo, una AAT) para una cobertura. Además, al utilizar la opción POLY en una cobertura de entrada que tiene una AAT, Limpiar volverá a crear automáticamente la AAT en la cobertura de salida. Los elementos adicionales en la AAT de entrada se unirán a la AAT de salida con el número interno anterior del arco como el elemento relacionado. Los elementos LPOLY# y RPOLY# en la AAT serán iguales a los nuevos números internos del polígono.
Los siguientes ejemplos se ilustran mediante Limpiar con la opción LINE para crear la AAT. El primer ejemplo es una cobertura que contiene topología de polígono. El segundo ejemplo no lo es; por lo tanto los números LPOLY y RPLOY se registraron como ceros.
Items from VEG.AAT after Clean FNODE TNODE LPOLY RPOLY LENGTH VEG# VEG-ID 1 3 2 1 5.0 1 1 1 2 3 2 2.0 2 2 1 4 1 3 10.0 3 3 2 3 4 2 1.9 4 4 4 2 4 3 3.9 5 5 3 4 4 1 5.1 6 6
Items from ROADS.AAT after CLEAN FNODE TNODE LPOLY RPOLY LENGTH ROADS# ROADS-ID 1 2 0 0 1.0 1 1 2 3 0 0 1.2 2 2 3 5 0 0 0.8 3 3 4 4 0 0 0.9 4 4 5 6 0 0 1.0 5 5
Configurar tolerancias para Limpiar
La elección de una tolerancia difusa es importante para CLEAN. Debido a que ninguna de las dos coordenadas en la cobertura de salida estarán dentro de esta distancia una de la otra, la tolerancia difusa determina la resolución de la cobertura de salida. Una tolerancia difusa que sea demasiado pequeña puede causar dos tipos de problemas.
- Es posible que Limpiar no pueda resolver segmentos de arco congruentes; es decir, segmentos de arco paralelos que están dentro de la tolerancia difusa de otros.
- Es posible que los falsos polígonos o arcos cortos existentes no se limpien correctamente.
Por el contrario, una tolerancia difusa que sea demasiado grande puede contraer los polígonos o fusionar los arcos que no se deben fusionar.
Tenga especial cuidado al elegir la longitud de arco colgante. Se eliminan los que son más cortos que la longitud correspondiente especificada.
Se puede utilizar Limpiar para procesar las coberturas LINE en las que se deben dividir los arcos que se intersecan o para volver a crear una topología de nodo y arco después de editar.
La herramienta Construir realiza operaciones de procesamiento similares. Construir con la opción POLY crea una topología de polígono y atributos (por ejemplo, una PAT). Crear con LINE permite crear una AAT o reconstruir una existente; sin embargo, no realiza una edición de coordenadas como hace Limpiar. Por ejemplo, no puede dividir arcos donde se intersecan con otros arcos. Otro comando de Cobertura, Renumerar nodos, renumera los números de nodo para cada arco al restablecer los números internos y actualizar automáticamente el número interno de los nodos de origen y los nodos de destino de cada arco en la AAT de cobertura.