→ Área privada
Aplitop · Surveying the Future

tcpMDT

[PRO] Generalización - MDT25

Actualizado el tcpMDT Read in English

6.11 [PRO] Generalización

[PRO] Generalización - MDT25

Bajo este comando agrupamos una serie de algoritmos conocidos, cuyo objetivo es la eliminación o bien la permanencia de los vértices de las polilíneas seleccionadas.

El programa ejecutará el algoritmo previamente establecido en la configuración del programa. Consulte el Manual de Personalización, sección Curvado.

A continuación se describen dos algoritmos, el de Douglas-Peucker y el Visvalingam.

Algoritmo de Douglas-Peucker

Se trata de un algoritmo de simplificación, es decir, trata de reducir el número de puntos existentes en una polilínea.

Se fundamenta en la búsqueda de puntos críticos a partir de una tolerancia lineal. Los puntos críticos, que constituirán la línea simplificada, serán los que progresivamente vayan alcanzando una distancia perpendicular mayor respecto a la línea base considerada, siempre superior a la tolerancia impuesta.

La primera línea base quedará constituida entre el primer (anclaje) y último punto (flotante) de la línea original. Acto seguido se calcularán las distancias perpendiculares de todos los puntos intermedios:

  • Si ninguna de estas distancias es mayor a la tolerancia la simplificación habrá finalizado y sólo quedarán retenidos los puntos inicial y final de la línea.

  • En el caso de que sí se supere la tolerancia, el punto con mayor distancia será retenido como punto crítico que subdividirá la línea original en dos secciones, en cada una de las cuales se repetirá el proceso como si de dos líneas independientes se tratase, y así sucesivamente hasta que no haga falta efectuar subdivisión alguna de la línea.

Esquema de funcionamiento del algoritmo de Douglas- Peucker.

Una vez ejecutado el comando, MDT solicitará las polilíneas que se desean modificar, y a continuación solicita la escala del dibujo. En función de ésta propone un valor para la tolerancia, la cual se puede modificar posteriormente por el usuario.

A continuación se puede visualizar el funcionamiento del algoritmo aplicando diferentes valores de tolerancias.

Algoritmo de Visvalingam

El algoritmo de Visvalingam es un operador de simplificación de polilíneas utilizado en el proceso de generalización; en dicho proceso irá eliminando progresivamente aquellos puntos menos significativos en la definición de la forma de la línea.

Será por tanto una herramienta muy útil cuando las pretensiones sean disminuir el volumen del dibujo o cuando el objetivo sea la representación de un determinado objeto lineal a una escala menor a la cual éste fue concebido.

El algoritmo de Visvalingam se sirve del concepto de área efectiva, definida como el área del triángulo que forma cada punto de la línea con sus dos inmediatos vecinos, y que viene a significar el desplazamiento que sufriría la línea en el caso de eliminar ese punto.

El proceso de simplificación de este algoritmo consiste en establecer una determinada tolerancia que corresponderá al parámetro área efectiva, por debajo de la cual serán eliminados los puntos cuyos correspondientes triángulos tengan menor área que dicha tolerancia. En la primera pasada se calculan las áreas de todos los triángulos y se elimina aquel punto de menor área efectiva. Una vez eliminado este punto se vuelven a calcular todas las áreas y se vuelve a eliminar el de menor área efectiva. Y así se continúa hasta que todas las áreas sean mayores que la tolerancia establecida.

Esquema de funcionamiento del algoritmo de Visvalingam.

Una vez ejecutado el comando, MDT solicitará las polilíneas que se desean modificar y el valor de la tolerancia, el programa posteriormente aplicará todo el proceso de cálculo.

A continuación se puede visualizar el funcionamiento del algoritmo aplicando diferentes valores de tolerancias.

Escribe tu duda y elige un producto para acotar los resultados. Usa ↑ ↓ e Intro para abrir un artículo.