Numero massimo di vertici dopo aver ritagliato un triangolo contro un AABB


8

Aggancio un triangolo 3D a una scatola di delimitazione allineata sull'asse 3D (AABB) per ottenere il poligono planare più grande del triangolo contenuto nell'ABS. Il mio algoritmo di ritaglio è una versione (leggermente modificata) del robusto algoritmo di Sutherland-Hodgman (ad esempio, i piani di ritaglio hanno uno spessore finito limitato) come descritto nel rilevamento della collisione in tempo reale di C. Ericson. Aggancio il triangolo a ciascuno dei 6 piani che costituiscono l'AABB.

Per evitare l'allocazione (de) dell'heap, ho assegnato in anticipo un buffer di punti di dimensioni fisse sullo stack per tutti i vertici del poligono planare ottenuto. La mia domanda ora è: qual è il numero massimo di vertici che si possono ottenere dopo aver ritagliato un triangolo contro un AABB?

In base al flusso di controllo, ogni vertice esaminato può provocare due vertici durante un ritaglio del piano poligonale. Quindi vertici. A causa della simmetria questo diventa vertici. Tuttavia, in pratica ottengo sempre meno vertici.326323=24

Risposte:


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.