1 votos

Resolver la auto-intersección de polígonos más rápido que O( $n^2$ )

Dado un polígono 2D representado por una secuencia ordenada de puntos en un plano. El polígono sólo puede ser cerrado y tener auto-intersecciones.

Estoy buscando un algoritmo que resuelva las auto-intersecciones de este polígono más rápido que O( $n^2$ ).

He intentado separar la parte del algoritmo de recorte de Vatti, que resuelve las auto-intersecciones, pero no lo he conseguido. El resultado correcto es algo así:

enter image description here

enter image description here

0voto

yoliho Puntos 340

Probablemente sepa que la simplicidad se puede probar en O( n ) a través del algoritmo de Chazelle, pero es tan complicado que nadie lo implementa. Son preferibles las implementaciones más sencillas sin la misma complejidad temporal asintótica. mucho más preferibles. Por ejemplo:

Feito, F., Juan Carlos Torres y A. Ureña. "Test de orientación, simplicidad e inclusión para polígonos planos". Ordenadores y gráficos 19.4 (1995): 595-600. ( Descarga del PDF .)

Si realmente quieres una buena complejidad temporal asintótica, puedes conseguir fácilmente O( n registro n ) mediante el algoritmo de Shamos & Hoey. Véase, por ejemplo La explicación de Dan Sunday .

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