Número máximo de vértices después de recortar un triángulo contra un AABB

8

Recorto un triángulo 3D contra un cuadro delimitador alineado por eje 3D (AABB) para obtener el polígono plano más grande del triángulo contenido en el AABB. Mi algoritmo de recorte es una versión (ligeramente modificada) del algoritmo Sutherland-Hodgman robusto (por ejemplo, los planos de recorte tienen un grosor finito pequeño) como se describe en C. Ericson Real-Time Collision Detection. Recorto el triángulo contra cada uno de los 6 planos que constituyen el AABB.

Para evitar la asignación de montón (des), asigné de antemano un búfer de punto de tamaño fijo en la pila para todos los vértices del polígono plano obtenido. Mi pregunta ahora es: ¿cuál es el número máximo de vértices posible que se puede obtener después de recortar un triángulo contra un AABB?

Según el flujo de control, cada vértice examinado puede generar dos vértices durante un recorte del plano poligonal. Así vértices. Debido a la simetría esto se convierte en vértices. Sin embargo, siempre obtengo menos vértices en la práctica.326323=24

Matías
fuente

Respuestas: