¿Cuáles son algunos buenos recursos (libros, artículos, sitios) sobre la intersección de polígonos y los algoritmos de unión?
¿Cuáles son algunos buenos recursos (libros, artículos, sitios) sobre la intersección de polígonos y los algoritmos de unión?
Respuestas:
Soy un gran admirador de las obras de Joseph O'Rourke. Recomiendo encarecidamente su libro Computational Geometry in C (2nd edition) porque tiene un equilibrio particularmente bueno de teoría e implementación. El Capítulo 7 contiene información directa sobre la intersección de polígonos.
La sugerencia de Paul es genial, solo me gustaría agregar dos más:
"Herramientas geométricas para gráficos por computadora", Schneider
"Geometría computacional" Mark deBerg et al.
En esta nota, mi 2cents (proveniente de la experiencia): si está considerando codificar tales algoritmos, le aconsejo que primero eche un vistazo a Boost :: Geometry y / o CGAL libray, no es necesario (con suerte) volver a inventa la rueda. Si está codificando en C ++, eso es ...
GPC, General Polygon Clipper es una buena implementación para operaciones booleanas en polígonos basados en el algoritmo de recorte de Vatti . La página también contiene enlaces a otras soluciones.
Una estrategia es buscar algoritmos modernos para problemas relacionados, como la detección de colisiones , etc. A menudo hay buenas estrategias en aplicaciones ligeramente diferentes si tiene un problema particular que está tratando de resolver.
En cuanto a la implementación, puede consultar la Biblioteca Boost Polygon .
Un par de libros generales de Geometría Computacional que están en mi estante son:
Geometría computacional: una introducción de Franco Preparata y Michael Shamos es otro buen libro introductorio sobre algoritmos de geometría computacional.
Geometría computacional: una introducción a través de algoritmos aleatorios por Ketan Mulmuley es un libro excelentemente construido con buena cobertura algorítmica de una amplia variedad de algoritmos para problemas geométricos; todo hecho a través de métodos aleatorios.
Este es bastante viejo y poco conocido, pero es bueno: