• Aucun résultat trouvé

Deuxi` eme ´ etape : calcul des points d’intersection entre trois quadriques

Len repr´esentant les points de L0 comme l’intersection entreC et l’ensemble

P0 ={p ∈QS∩QT|∇QS(p) =∇QT(p)}, o`u QS etQT sont des quadriques r´eguli`eres de

F0. Une condition est cependant n´ecessaire ici, C ne doit pas ˆetre incluse dans P0. Il se trouve que cette condition est satisfaite, car sinon soitL0 est vide, soit le probl`eme revient `

a un des deux cas d´ecrits ci-dessus. Notons que les points de L0 sont les points nodaux de C induits par la courbe d’intersection qui le contient d´efinie par F0. Comme C n’est pas dansP0, ses intersections avec ce dernier sont exactement les points de L0. Ainsi, les points de L correspondent `a l’ensemble {Ψ(u, v)|SΨ(u, v) = TΨ(u, v); (u, v) ∈ P1(R)}. Soient fi(u, v) et gi(u, v), i ∈ {1,2,3,4}, les fonctions qui expriment les coordonn´ees respectivement de SΨ(u, v) et de TΨ(u, v). Les valeurs param´etriques des points de L

sont les racines r´eelles de gcd(s12(u, v), s13(u, v), s14(u, v), s23(u, v), s24(u, v), s34(u, v)), o`u (u, v) ∈ P1(R) et sij(u, v) = fi(u, v)gj(u, v)−fi(u, v)gj(u, v). Pour finir, les points de la liste L0 sont associ´es `a ceux de la liste L par la m´ethode d´ecrite dans la section 4.4.

4.3 Deuxi`eme ´etape : calcul des points d’intersection

entre trois quadriques

La deuxi`eme ´etape de Q3 consiste `a calculer les points d’intersection de toute compo-sante avec les quadriques du mod`ele CSG qui ne la contiennent pas. Lesnquadriques sont consid´er´ees trois par trois : les deux quadriques qui forment la composante en question et une parmi les n−2 quadriques restantes.

Soit CS,T une des composantes de la courbe d’intersection entre les quadriques QS et

QT et soit QU une autre quadrique du mod`ele. L’algorithme v´erifie d’abord si CS,T est contenue dansQU. Si ce n’est pas le cas, alors il cherche leurs points d’intersection r´eels sur le param´etrage de CS,T. Cette ´etude est effectu´ee de fa¸con it´erative pour toutes les composantes de toutes les courbes d’intersection. ´Etant donn´e que les composantes qui co¨ıncident ont ´et´e identifi´ees et qu’elles poss`edent le mˆeme param´etrage, elles sont trait´ees une seule fois.

Chapitre 4. Q3 : Calcul du graphe d’adjacence d’un arrangement de quadriques

Deux cas de figure sont `a consid´erer : celui o`u CS,T est une quartique lisse, et celui o`u elle ne l’est pas. La diff´erence vient de la complexit´e alg´ebrique de son param´etrage. En particulier, le param´etrage d’une quartique lisse contient la racine carr´ee d’un polynˆome tandis que celui d’une composante de toute autre courbe d’intersection est form´e par des fonctions rationnelles (cf. chapitre 3). Pour cette raison nous avons pr´esent´e ces deux situations dans deux sections distinctes en commen¸cant par la plus simple (celle o`uQS et

QT ont une intersection singuli`ere).

4.3.1 Cas o`u la composante n’est pas une quartique lisse

Supposons que CS,T n’est pas une quartique lisse. Soit Ψ(u, v), (u, v) ∈ P1(R) son param´etrage. Les coordonn´ees de Ψ(u, v) dansP3(R) sont polynomiales.

Dans l’optique de trouver les points d’intersection entre CS,T etQU, Q3 injecte Ψ(u, v) dans l’´equation implicite de QU. Ceci r´esulte en un polynˆome `a une variable projective, que nous notons h(u, v) :

h(u, v) = tΨ(u, v).U.Ψ(u, v).

Si CS,T ∈ QU, alors h(u, v) est identiquement nul. Sinon il est de degr´e 8, 6, 4 ou 2 quand CS,T est respectivement une quartique, une cubique, une conique ou une droite. Chaque racine r´eelle de h(u, v) correspond `a un point d’intersection entre CS,T etQU.

4.3.2 Cas d’une quartique lisse

La racine carr´ee de polynˆome dans le param´etrage Ψ(u, v) d’une quartique lisse rend ce cas un peu plus complexe alg´ebriquement. D’apr`es le chapitre 3, Ψ(u, v) = Ψ1(u, v) +

2(u, v)p∆(u, v), (u, v), (s, t) ∈ P1(R) et ∈ {±1}. Les deux signes possibles de

divisent CS,T en deux arcs. Par cons´equent, afin de trouver un point d’intersection entre

CS,T et QU il est n´ecessaire de calculer, d’une part, la valeur de (u, v) qui lui correspond, et d’autre part, l’arc auquel il appartient.

Rappelons que CS,T est d´efinie dans l’espace des param`etres d’une quadrique r´egl´ee `a coefficients rationnels du faisceau engendr´e par QS etQT, que nous avons not´eeQR dans

4.3. Deuxi`eme ´etape : calcul des points d’intersection entre trois quadriques le chapitre 3. Le calcul des points d’intersection deCS,T avec QU est bas´e sur le fait que :

QS ∩QT ∩QU =QS∩QR∩QU = (QR∩QS)∩(QR∩QU).

L’´equation aux param`etres associ´ee `aQR et QS s’´ecrit :

ΩR,S =a2(u, v)s2+a1(u, v)st+a0(u, v)t2 = 0, (4.1) o`u a2(u, v), a1(u, v) et a0(u, v) sont des polynˆomes de degr´e 2 en (u, v), et o`u (u, v), (s, t)∈P1(R). L’image par le param´etrage deQR des solutions de cette ´equation de degr´e deux en (u, v) donne Ψ(u, v) :

(2a0(u, v),−a1(u, v) +p∆(u, v)),

o`u ∈ ±1 et ∆ =a12(u, v)−4a0(u, v)a2(u, v)∈Q(√

δ)[(u, v)] avec δ un nombre entier. De fa¸con similaire, sur l’espace des param`etres de QR, l’´equation aux param`etres as-soci´ee `aQR etQU s’exprime par :

R,U =b2(u, v)s2 +b1(u, v)st+b0(u, v)t2 = 0, (4.2)

b2(u, v),b1(u, v) et b0(u, v) ´etant des polynˆomes de degr´e 2 en (u, v).

Comme les points communs entre CS,T etQU sont les points communs entre QR∩QS

etQR∩QU, ils correspondent aux racines communes de ΩR,S et de ΩR,U. Ainsi, Q3 calcule le r´esultant de ΩR,S et de ΩR,U en (s, t) :

r(ΩR,S,ΩR,U,(s, t)) =s022(u, v)−s01(u, v)s12(u, v)

avecsij(u, v) =ai(u, v)bj(u, v)−aj(u, v)bi(u, v)∈Q(√

δ)[(u, v)].

D’apr`es la Proposition 1 dans [12],CS,T ⊂QU si et seulement si r(ΩR,S,ΩR,U,(s, t))≡

0. Dans le cas o`u r(ΩR,S,ΩR,U,(s, t)) n’est pas identiquement nul, c’est un polynˆome de degr´e 8. Le th´eor`eme de B´ezout garantit que ses solutions, consid´er´ees avec leurs multiplicit´es, correspondent aux valeurs de (u, v) des racines communes entre ΩR,S et ΩR,U. D´esormais il reste le probl`eme d’´eliminer les racines complexes et `a d´eterminer l’arc, (2a0(u, v),−a1(u, v)+p∆(u, v)) ou bien (2a0(u, v),−a1(u, v)−p∆(u, v)), sur lequel chaque racine r´eelle repose.

Le th´eor`eme 2 dans [12] r´epond `a ce probl`eme. Soit (u0, v0)∈P1(R) une racine r´eelle der(ΩR,S,ΩR,U,(s, t)) telle que a0(u0, v0)6= 0. Trois cas sont distingu´es :

Chapitre 4. Q3 : Calcul du graphe d’adjacence d’un arrangement de quadriques – si ∆(u0, v0)<0, alors (u0, v0) correspond `a deux points complexes diff´erents ; – si ∆(u0, v0) = 0, alors (u0, v0) correspond `a un point r´eel qui repr´esente une extr´emit´e

commune sur les deux arcs ; – enfin si ∆(u0, v0)>0, alors :

– sis01(u0, v0)6= 0, alors (u0, v0) correspond `a un point r´eel sur l’arc (2a0(u, v),−a1(u, v)+

p∆(u, v)) o`u=−signe(s01(u0, v0)).signe(2a0(u0, v0)s02(u0, v0)−a1(u0, v0)s01(u0, v0)) ; – si s01(u0, v0) = 0, alors (u0, v0) correspond `a deux points r´eels, un sur chaque arc.

4.4 Troisi`eme ´etape : associer les points