• Aucun résultat trouvé

Comparaison avec l’´ etat de l’art

`

a l’exception d’une seule ´etape de Q3 dont la complexit´e est O(n4) (voir les chapitres 4, 5, 6 et 7). Il s’agit de l’´etape qui ´elimine, parmi les O(n2) composantes alg´ebriques des intersections entre quadriques, celles qui apparaissent de mani`ere redondante. Cette ´etape est pr´esent´ee de fa¸con na¨ıve dans Q3 [12] car elle n’a pas d’incidence en pratique sur les performances de son implantation. Cependant, cette op´eration de«d´edoublonage»peut ˆetre effectu´ee en tempsO(n3logn) de mani`ere relativement directe. En effet, une approche possible consiste `a (i) calculer pour chacune des O(n2) composantes, lesO(n) quadriques du mod`ele qui la contiennent ; on peut ne consid´erer que les ensembles de quadriques qui d´efinissent ces composantes et (ii) les ordonner par ordre lexicographique des indices des quadriques qui apparaissent ; il suffit alors (iii) d’´eliminer tous les doublons d’ensembles de quadriques, et (iv) de recalculer pour chaque ensemble restant de quadriques, la ou les composantes communes. L’ensemble de ces op´erations peut ˆetre effectu´e en temps

O(n3logn). La taille de sortie est de l’ordre de O(m) = O(kn) = O(n3), o`u m est le nombre total de points d’intersection trouv´es par Q3.

9.2 Comparaison avec l’´etat de l’art

Parmi les travaux r´ealis´es, trois solutions s’approchent de notre objectif de conversion sur des sc`enes d´etermin´ees par des quadriques, celle de J. Keyser, S. Krishnan et D. Manocha [28, 29], celle de B. Mourrain, J.P. T´ecourt et M. Teillaud [37], et celle de N. Wolpert, E. Sch¨omer et E. Berberich [46,5].

L’algorithme de J. Keyser, S. Krishnan et D. Manocha [28, 29] s’appuie sur le calcul exact, mais ne g`ere pas la totalit´e des configurations d´eg´en´er´ees. En particulier, il ne consid`ere pas les cas o`u deux surfaces se touchent en un point ou bien quatre surfaces s’intersectent en un point. C’est un algorithme de conversion incr´emental. Les objets g´eom´etriques sont construits `a partir de primitives compos´ees par des carreaux de surfaces. D’apr`es les travaux de C. Lamathe, S. Lazard et S. Petitjean [32], sa complexit´e en temps dans le pire des cas est O(n3) si le mod`ele BRep correspondant `a tout nœud interne de l’arbre CSG est constitu´e de O(n) carreaux, et O(n9) dans le cas g´en´eral.

Chapitre 9. Conclusion

Compar´e `a cet algorithme, le nˆotre est exact et il traite de plus tous les cas, y compris les cas d´eg´en´er´es. Comme il est non-incr´emental, sa complexit´e en temps dans le pire des cas n’est pas sensible au nombre de faces ou le nombre de carreaux n´ecessaires pour d´efinir la surface du mod`ele. Cette complexit´e ´etantO(n4), notre algorithme est plus coˆuteux que celui de J. Keyser, S. Krishnan et D. Manocha dans le cas o`u le nombre de tels carreaux est (au plus) lin´eaire en le nombre de primitives. Par contre, il est clairement beaucoup plus efficace dans le cas o`u ce nombre est au plus cubique en n.

De leur cˆot´e, l’algorithme de B. Mourrain, J.P. T´ecourt et M. Teillaud [37] et celui de N. Wolpert, E. Sch¨omer et E. Berberich [46, 5] ne calculent pas une conversion CSG-BRep, mais l’arrangement de quadriques `a partir duquel le mod`ele BRep pourrait ˆetre d´eduit. Ici les primitives du mod`ele CSG sont repr´esent´ees par des fonctions implicites. Notons que cette approche repr´esente une fa¸con indirecte pour calculer le mod`ele BRep du fait que l’arrangement de quadriques est un probl`eme difficile en soi.

L’algorithme de B. Mourrain, J.P. T´ecourt et M. Teillaud [37] utilise la technique de d´ecomposition verticale. Il est exact, mais certaines configurations entre quadriques sur le plan de balayage ne sont pas consid´er´ees. Sa complexit´e combinatoire dans le pire des cas s’´el`eve `a O(nlog2n+V logn) o`u V est la taille de la d´ecomposition verticale. D’un autre cˆot´e, la technique de d´ecomposition verticale utilis´ee m`ene `a une complexit´e alg´ebrique ´elev´ee, comme par exemple des nombres alg´ebriques de degr´e 16, ce qui rend cet algorithme difficilement impl´ementable en pratique `a l’heure actuelle.

Enfin, l’algorithme de N. Wolpert, E. Sch¨omer et E. Berberich [46, 5] r´eduit le pro-bl`eme en un calcul d’arrangement bidimensionnel en projetant les quadriques sur un plan. Il donne des r´esultats exacts y compris pour l’ensemble des cas d´eg´en´er´es. Il est ´ egale-ment efficace, de complexit´e en temps O(n3logn). Une application de cette approche au probl`eme de conversion CSG-BRep a ´et´e sugg´er´ee par E. Berberich dans son rapport de master de 2004 [5], mais n’a pas ´et´e d´evelopp´ee `a ce jour.

En comparaison avec l’algorithme de B. Mourrain, J.P. T´ecourt et M. Teillaud, le nˆotre est ´egalement exact, mais, de plus, il consid`ere tous les cas. Sa complexit´e en temps dans le pire des cas est sup´erieure. Cependant, sa complexit´e alg´ebrique est relativement faible grˆace `a, d’une part QI qui calcule un param´etrage quasi-optimal des courbes d’intersection

9.2. Comparaison avec l’´etat de l’art entre quadriques, c’est-`a-dire qu’au pire le nombre de racines carr´ees est `a une unit´e de l’optimal, et d’autre part Q3 qui exprime les points d’intersection entre quadriques par un polynˆome et un intervalle d’isolation. Compar´e `a l’algorithme de N. Wolpert, E. Sch¨omer et E. Berberich le nˆotre est ´egalement robuste au sens o`u tous les cas d´eg´en´er´es sont trait´es dans le paradigme du calcul g´eom´etrique. Sa complexit´e en temps dans le pire des cas est par contre sup´erieure. Notons, de plus, que notre algorithme r´esout int´egralement le probl`eme de conversion CSG-BRep, ce qui n’est pas le cas des deux algorithmes ci-dessus. Il semble int´eressant de se demander si notre solution du probl`eme de conversion CSG-BRep, qui est destin´ee aux sc`enes d´efinies par des quadriques, apporte une am´elioration aux solutions qui existent du probl`eme sur des sc`enes d´etermin´ees par des poly`edres. Comme notre objectif ´etait de concevoir un algorithme robuste, il serait ad´equat de faire une comparaison avec les algorithmes qui traitent des poly`edres de mani`ere exacte. Deux algorithmes de mod´elisation correspondent `a ces crit`eres, celui de M.O. Benouamer, D. Michelucci et B. Peroche de 1994 [3] et celui de S. Fortune de 1997 [18]. Le premier est un algorithme de conversion CSG-BRep incr´ementale. Le second est un algorithme de mod´elisation surfacique qui ne r´esout pas le probl`eme de conversion CSG-BRep, mais qui peut ˆetre appliqu´e `a une conversion CSG-BRep incr´ementale. Nous n’avons pas trouv´e d’estimation de complexit´e th´eorique pour ces deux solutions dans la litt´erature.

Toutefois, du fait qu’elles sont incr´ementales, elles sont n´ecessairement sensibles au nombre de faces qui constituent la surface des objets correspondant aux diff´erents nœuds de l’arbre CSG. M. Tawfik a present´e un algorithme de conversion CSG-BRep qui est optimal en termes de complexit´e, non exact, et destin´e aux objets poly´edriques [51]. Sa complexit´e en temps dans le pire des cas est estim´ee `a O(n3) o`u n est le nombre total de faces des primitives. Comme cette complexit´e est optimale, et comme les algorithmes ci-dessus ont en plus la contrainte du calcul exact, leur complexit´e en temps dans le pire des cas est au moins ´egale `a celle de l’algorithme de M. Tawfik, c’est-`a-dire O(n3). Ainsi, la complexit´e de notre algorithme dans le pire des cas ´etant O(n4), o`u n est le nombre de primitives, ce dernier n’apporte pas d’am´elioration pour les sc`enes d´efinies par des poly`edres pour le cas o`u le nombre total de faces des primitives est lin´eaire en le nombre de primitives.

Chapitre 9. Conclusion