19 votos

Encontrar túnel en el centro de la línea'?

Tengo algunos archivos de mapa que consiste en 'polilíneas' (cada línea es sólo una lista de vértices) en representación de los túneles, y quiero probar y encontrar el túnel " centro de línea (se muestra, a grandes rasgos, en color rojo).

alt text

He tenido un poco de éxito en el pasado el uso de la triangulación de Delaunay , pero me gustaría evitar que ese método como que no (en general) que permite un fácil/frecuente la modificación de mi mapa de datos.

Alguna idea sobre cómo podría ser capaz de hacer esto?

Gracias.

P. S. estoy trabajando en bastante cruda C++, y se refiere aquí a partir de Stack Overflow.

6voto

cjstehno Puntos 131

Ha dibujado una buena aproximación a la media del Eje de Transformación. Las triangulaciones de Delaunay, de hecho, ofrece una buena aproximación a ella. (El principal reto es que las piezas de la alfombra son piezas de las parábolas, no sólo de los segmentos de línea.)

Me he encontrado referencias al código de trabajo (normalmente en C/C++ recuerdo) en la literatura académica. Hacer una búsqueda en Google Scholar y buscar más viejos papeles (los nuevos, parece estar centrándose en los cálculos 3D).

4voto

tobes Puntos 19

Podría ser digno de mirar en "polígono esqueletos".

Hay algo de código fuente de C++ de la muestra http://www.cgal.org/Manual/3.2/doc_html/cgal_manual/Straight_skeleton_2/Chapter_main.html

0voto

Paul G Puntos 1615

Esta pregunta también se ocupan de lo que usted está buscando: skeletisation algoritmos.

Echar un vistazo !

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X