Manuales de uso Kosmo Desktop v2.0 8. Herramientas: generalización Versión 1.0 27/11/2009 KOSMO DESKTOP v2.0 | 0 Licencia Puede visualizar la licencia completa en castellano en el siguiente enlace: http://creativecommons.org/licenses/by-sa/3.0/es/legalcode.es 2 KOSMO DESKTOP v2.0 | 3 1 CONTROL DE VERSIONES VERSIÓN AUTOR FECHA 1.0 SAIG, S.L. 27/11/09 CAMBIO Versión Inicial Índice de contenido 0 Licencia..............................................................................................................................................2 1CONTROL DE VERSIONES......................................................................................................................3 2Introducción..........................................................................................................................................4 3Herramientas de generalización...........................................................................................................5 3.1Generalización de líneas Douglas - Peucker..................................................................................5 3.1.1Introducción..........................................................................................................................5 3.1.2Funcionamiento....................................................................................................................5 Algoritmo de Douglas-Peucker.................................................................................................5 3.1.3Uso detallado........................................................................................................................6 3.2Generalización preservando la topología (JTS)..............................................................................9 3.2.1Introducción..........................................................................................................................9 3.2.2Funcionamiento....................................................................................................................9 3.2.3Uso detallado........................................................................................................................9 3.3Reductor de precisión.................................................................................................................11 3.3.1Introducción........................................................................................................................11 3.3.2Funcionamiento..................................................................................................................11 3.3.3Uso detallado......................................................................................................................11 Índice de imágenes Imagen Imagen Imagen Imagen Imagen Imagen Imagen Imagen Imagen Imagen Imagen Imagen 1: Algoritmo de Douglas-Peucker...............................................................................................6 2: Detalle de Kosmo con una capa de líneas en modo editable..................................................6 3: Acceso a la herramienta Generalización de Douglas-Peucker.................................................7 4: Selección del valor máximo...................................................................................................7 5: Resultado de la herramienta Generalización de líneas Douglas-Peucker................................8 6: Detalle de Kosmo con una capa de líneas en modo editable..................................................9 7: Acceso a la herramienta generalización preservando la topología.......................................10 8: Selección del valor máximo.................................................................................................10 9: Resultado de la herramienta Generalización preservando la topología................................10 10: Detalle de la capa a la que aplicamos la reducción............................................................12 11: Detalle de la configuración de la herramienta....................................................................12 12: Capa con la reducción de precisión aplicada......................................................................13 KOSMO DESKTOP v2.0 | 4 2 Introducción A lo largo de este documento se va a explicar el funcionamiento de las diferentes herramientas incorporadas en Kosmo – Desktop dentro del menú principal Herramientas > Generalización. Son las siguientes: – Generalización de líneas Douglas – Peucker. – Generalización preservando la topología (JTS). – Reductor de precisión. Todas estas herramientas están disponib les dentro de la distrib ución principal de Kosmo – Desktop, por lo que no es necesario activar ninguna extensión adicional. KOSMO DESKTOP v2.0 | 5 3 Herramientas de generalización 3.1 Generalización de líneas Douglas - Peucker 3.1.1 Introducción La herramienta Generalización de líneas (Douglas-Peucker) lleva a cabo un proceso de simplificación de las líneas seleccionadas en una capa mediante el algoritmo de Douglas-Peucker. Las líneas seleccionadas se verán modificadas de forma que su número de vértices al finalizar la herramienta será igual o menor que antes del comienzo de la misma. Se puede acceder a la herramienta a través del menú Herramientas y el submenú Generalización. 3.1.2 Funcionamiento La herramienta sólo se puede ejecutar sobre capas con geometrías de tipo lineal. Además la capa tiene que estar en modo editable y una o más líneas deben estar seleccionadas. Cada una de las líneas seleccionadas será sometida al algoritmo de Douglas-Peucker para eliminar vértices y obtener una línea aproximada a la original con menos puntos. La herramienta pide al usuario que indique el valor máximo para la distancia de los puntos (ver la descripción del algoritmo de Douglas-Peucker a continuación). Algoritmo de Douglas-Peucker Es un algoritmo recursivo que trata de simplificar una línea eliminando puntos que “contribuyen poco” a la geometría. Los puntos que se eliminan son los que están más cerca de una línea de referencia que la cantidad fijada como máxima permitida. La idea base es crear una línea recta (de referencia) entre los puntos inicial y final de la línea original. A continuación se coge el vértice más alejado a esta línea y se une a los puntos inicial y final. Después se hace la recursión con las dos líneas generadas repitiendo el procedimiento. Si en alguna recursión se llega a que ningún punto dista de la línea correspondiente más que la distancia máxima fijada se termina. Así todos los puntos que al final distan menos que esta cantidad de la línea de referencia se consideran que están demasiado cerca y se descartan pues no contribuyen a la aproximación. KOSMO DESKTOP v2.0 | 6 Imagen 1: Algoritmo de DouglasPeucker En la figura: – a es la línea de referencia – b es la distancia al punto más alejado (mayor que el valor fijado como máximo) – c es el punto más alejado a la línea de referencia y que dista de ésta más que el valor máximo fijado 3.1.3 Uso detallado Imagen 2: Detalle de Kosmo con una capa de líneas en modo editable Para ejecutar la herramienta es necesario que la capa de líneas esté en modo editable y que al menos una de las líneas esté seleccionada. Una vez que se está en condiciones de comenzar sólo hay que activar la vista (haciendo clic con el ratón en la ventana de visualización de las capas) e ir al menú Herramientas y a continuación al submenú Generalización. En este submenú aparece la herramienta Generalización de líneas Douglas-Peucker: KOSMO DESKTOP v2.0 | 7 Imagen 3: Acceso a la herramienta Generalización de Douglas-Peucker Si la herramienta aparece desactivada (en color gris y no respondiendo al hacerle clic) significa que hay alguna condición previa a la ejecución que no se está respetando. Situando el puntero del ratón sobre el nombre de la herramienta en el menú aparecerá una descripción del problema. Si la herramienta aparece desactivada (en color gris y sin responder al pulsar sob re ella) significa que hay alguna condición previa a la ejecución de la misma que no se está respetando. Si situamos el cursor del ratón sob re la misma aparecerá una descripción de la condición que no se cumple Una vez iniciada la herramienta se le pedirá al usuario que introduzca el valor máximo permitido para el algoritmo de Douglas-Peucker: Imagen 4: Selección del valor máximo Una vez pulsado el botón de Aceptar podemos observar que se han generado líneas aproximadas a las originales con un número menor de vértices. Las líneas no seleccionadas no se simplifican: KOSMO DESKTOP v2.0 | Imagen 5: Resultado de la herramienta Generalización de líneas Douglas-Peucker 8 KOSMO DESKTOP v2.0 | 9 3.2 Generalización preservando la topología (JTS) 3.2.1 Introducción La herramienta Generalización preservando la topología tiene como función simplificar los elementos lineales y poligonales de una capa conservando la topología de la misma. Las líneas y polígonos seleccionados se verán modificados en el número de vértices que la componen, según la distancia máxima que el usuario permita. El número de vértices al finalizar la herramienta será igual o menor que antes del comienzo de la misma. Se puede acceder a la herramienta a través del menú Herramientas y el submenú Generalización. 3.2.2 Funcionamiento La herramienta sólo se puede ejecutar sobre capas con geometrías de tipo lineal y poligonal. La capa tiene que estar en modo editable y uno o más elementos de dicha capa deben estar seleccionados La herramienta pide al usuario que indique el valor máximo para la distancia de los vértices, y a través de este parámetro el programa simplifica el número de vértices conservando la forma del elemento. 3.2.3 Uso detallado Imagen 6: Detalle de Kosmo con una capa de líneas en modo editable Para ejecutar la herramienta es necesario que la capa esté en modo editable y que al menos un elemento esté seleccionado. Una vez que se está en condiciones de comenzar sólo hay que ir al menú Herramientas y a continuación al submenú Generalización. En este submenú aparece la herramienta Generalización preservando la topología: KOSMO DESKTOP v2.0 | 10 Imagen 7: Acceso a la herramienta generalización preservando la topología Una vez iniciada la herramienta se le pedirá al usuario que introduzca el valor máximo permitido: Imagen 8: Selección del valor máximo Podemos observar que como resultado se han generado un polígono con menos vértices (lado derecho) y con la forma geométrica aproximada del elemento original (elemento a la izquierda). Este nuevo elemento presenta menor número de vértices ya que fueron eliminando puntos que “contribuyen poco” a la geometría. Los puntos que se eliminan son los que están más cerca de la línea de referencia según la distancia permitida. Imagen 9: Resultado de la herramienta Generalización preservando la topología KOSMO DESKTOP v2.0 | 11 3.3 Reductor de precisión 3.3.1 Introducción Esta herramienta nos permite reducir la precisión de las coordenadas en una capa, sea ésta de tipo poligonal o lineal. Es importante señalar que los cambios realizados no son reversibles. Se puede acceder a la herramienta a través del menú Herramientas y el submenú Generalización. 3.3.2 Funcionamiento La herramienta debe ejecutarse tras haber puesto en modo edición a la capa que queremos modificar. Una vez seleccionada dicha capa lanzamos la herramienta. Al ejecutar la herramienta el sistema nos pide los siguientes parámetros: • Factor de escala: el factor de escala para multiplicar por el anterior redondeo (negativo para el punto decimal a la izquierda) por defecto es 1, en caso contrario podemos modificarlo aumentando o disminuyendo según nuestra conveniencia. • Posición de decimales: número de decimales desplazados para redondear (negativo para puntos decimales a la izquierda). • Actuar sobre: Capa completa: se transformarán todos los elementos de la capa. Elementos seleccionados: se transformarán solamente aquellos elementos de la capa que estén seleccionados. Elementos incluidos en la vista: se transformarán únicamente aquellos elementos de la capa que estén incluidos en la vista actual. • Capa de geometría reducidas no válidas: la herramienta permite generar una capa que incluya aquellas geometrías que ha considerado como no válidas. Esta capa de elementos no válidos puede almacenarse en memoria (En memoria) o guardarla en un formato específico (Elegir destino). • Capa de geometrías de entradas no válida: esta opción es similar a la anterior, solo que en esta capa se almacenarían las geometrías de entrada que no son válidas. 3.3.3 Uso detallado Vamos a probar la herramienta para el siguiente ejemplo: KOSMO DESKTOP v2.0 | 12 Imagen 10: Detalle de la capa a la que aplicamos la reducción Seleccionamos la capa poligonal, la situamos en modo edición y ejecutamos la herramienta. Nos aparece el siguiente diálogo: Imagen 11: Detalle de la configuración de la herramienta En esta ventana asignamos los parámetros para llevar a cabo la reducción: • • • • Factor de escala: 1 (lo dejamos por defecto) Posición de decimales: 0 Actuamos sobre la capa completa Generamos una capa de geometrías reducidas no válidas en memoria. KOSMO DESKTOP v2.0 | 13 Pulsamos el botón Aceptar y como resultado obtenemos el siguiente ajuste (como el sistema no encontró geometrías reducidas no válidas, en este caso no genera la capa correspondiente): Imagen 12: Capa con la reducción de precisión aplicada Como la herramienta ha sido realizada con éxito, el sistema emite un mensaje en amarillo en la barra de estado. Si nos acercamos al elemento mediante la herramienta de zoom el polígono se ha desplazado ajustándose a las características de la precisión que aplicamos a través de la herramienta. http://www.saig.es Email: info@saig.es Avenida República Argentina 28. Edificio Domocenter. Oficina 7, 2ª planta. 41930, Bormujos – Sevilla – España