• Aucun résultat trouvé

Modèles implicites

Dans le document Modélisation géométrique (Page 123-158)

245

Définition

Une courbe plane est définie par : f(x,y) = 0

Une surface est définie par f(x,y,z) = 0 notation f(P) = 0

Une courbe gauche : intersection de deux surfaces

Un modèle implicite dépend fortement du référentiel choisi (comme une représentation cartésienne)

On impose au minimum que f soit différentiable – f est continue

– f admet des dérivées partielles du premier ordre

• non nécessairement continues

Modélisation Géométrique 247

Définition

!

!

!

"

!!

!

#

$

= z f y fx f f grad

Correspond implicitement à des courbes ou surfaces de niveau

– f(x,y,z) = c (ou f(x,y,z)-c = 0)

On appelle grad f, le vecteur :

En un point régulier (grad f ¹0),

grad f est un vecteur normal à la surface (à la courbe)

247

Quelques propriétés

Les surfaces les plus connues ont souvent une forme implicite :

– x2+y2+z2= R2 – x2-y2+z2= 0 – plan

– cylindre, tore, …

Une surface implicite délimite un solide (non nécessairement borné, ex : cône)

Obtention naturelle de l'intérieur de la peau et de l'extérieur avec le signe de f(P)

– f(P) = 0 peau

Modélisation Géométrique 249

Exemples

Quadriques

Superquadriques

Composition de surfaces

– composition très simple (en + ou -) – addition des contributions

2 1

Avec l'autorisation du Laboratoire Electronique et Informatique de l'Image Université de Bourgogne

249

Surfaces de potentiel

Définir un ensemble de points Pi

Pour chaque point Pi, – définir une fonction Fi(||P-Pi||)

– décroissante en fonction de la distance (zone d'influence) (ex e-r) – fonction dépendant de la distance au point

– définir l'influence de Fi

– Blobs (Blinn Objets, introduit par Blinn en 82)

Définir un seuil c : =∑ ∈ℜ 2 blobs se rapprochant

Modélisation Géométrique 251

Surfaces de potentiel

On peut jouer sur : – la position des points Pi,

– les fonctions Fi(beaucoup de possibilités) – les coefficients d'influence des Fi

On peut centrer sur chaque Piune surface implicite et combiner :

origine LE2I, Université de Bourgogne

251

Surfaces de potentiel

Notions de squelette :

– ensemble organisé de points, de segments, triangles, etc ...,

Modélisation à partir de squelette

– les fonctions Fisont des fonctions dépendant de la distance au ième élément du squelette

– définition d'un seuil

– modélisation d'une surface complexe suivant le squelette

– possibilités intéressantes

Des travaux récents sur les surfaces implicites qui sont très performants et originaux

Modélisation Géométrique 253

Affichage d'une surface implicite

Délicat. Algorithme du marching cube – Une résolution de grille fixée

• f(p)>0 : « + »

• f(p)<0 : « - »

Deux attitudes

– On suit la courbe dans la grille

• Chaque cellule explorée est marquée

• On obtient une ligne polygonale

– On explore systématiquement la grille (cellule par cellule)

• On obtient une « soupe » de segments

Implique qu'à la précision de la grille – Pas de boucle à l'intérieur d'une cellule – Pas de bord de cellule coupé 2 fois

Se généralise en 3D – … avec plus de cas !

+

-+

+ +

+ +

+

-253

Implicite-paramétrique ?

Les surfaces implicites

– simples à modéliser, délimitent des volumes

– grosses possibilités de déformations, de mélange, de collision – particulièrement adaptées au graphique, à l'animation

– calculs d'intersection simplifiés

– accès direct à la valeur avec les coordonnées,

ou à une équation connaissant une ou deux coordonnées – intuitives, mais moins faciles à maîtriser géométriquement – peuvent dépendre du référentiel

Les surfaces paramétriques

– manipulations précises, contrôle des tangentes, normales, courbures – dessin simple

– subdivision, …

origine LE2I, Université de Bourgogne

Modélisation Géométrique 255

Troisième partie :

Modélisation de courbes et surfaces

… pour la CFAO, l'imagerie, ...

255

On a (n+1) points Pidu plan ou de l'espace – points distincts et ordonnés

– pointsgénéralement bruités

Méthode directe

Interpolation

Lissage (moindres carrés) Courbes : introduction

Pb : définir une courbe avec ces points

=

Modélisation Géométrique 257

L'esthétique !

Vaste problème non résolu – part de subjectivité, de mode, …

Un des problèmes de la modélisation géométrique – des outils mathématiques performants

– pas (peu) d'outils d'analyse ni de choix automatique

Un bon résultat : une courbe qui « file bien » ?

L'œil est « sensible » aux :

– discontinuités de tangence, courbure (?), torsion (??) – inflexions

– régularité de la courbure (expert)

Eviter le terme lisse

– sens mathématique : CP p grand, en modélisation géométrique ??

– en anglais : smooth, fair 257

Critères de précision

Cas général : distance d'un point donné à la courbe (surface) – projection orthogonale sur la tangente (plan tangent)

– problème non linéaire délicat (même pour une courbe)

• 2 paramètres sur une surface !

P=C(t) C'(t) Pi

0 .

) (

' t PPi = C

Mais :

Pi

Attention aux cas particuliers !

Modélisation Géométrique 259

L'esthétique !

En pratique :

difficile d'apprécier une courbe juste avec son affichage

généralement glissement 3D®2D

bonne courbe : respect des signes de la courbure et la plus monotone possible (Farin)

Que faire : liste non exhaustive

Visualisations autour de la courbure – inflexions

– répartition des courbures

259

L'esthétique

Energie de déformation

– poutre + cadre de l'élasticité linéaire

• Moment des forces :

• Energie de déformation est définie par

– par analogie, énergie de déformation d'une courbe

• critère global (comparaison)

• pour une courbe y(x) et petits déplacements (y '<<1)

• attention aux simplifications de l'intégrant

• On peut aussi étudier :

Modélisation Géométrique 261

L'esthétique

Qualité du polygone de contrôle – Etude dans l'automobile (Peugeot) – Importance

• dans le cadre de la normalisation STEP

• de l'échange de données entre systèmes

– Un bon polygone :

• simple

• proche de la courbe

• distance régulière entre les points

• angles réguliers

• « bon » nombre de points

• ...

261

Méthode directe

B-splines d'ordre k,

– en général vecteur de nœuds quasi-uniforme – Bézier : cas particulier

Choix du vecteur de nœuds (définition de la base) – répartition uniforme (+ multiplicités aux extrémités) – répartition à partir des longueurs des cordes du polygone

Variation de l'ordre valeurs mini et maxi

Variation sur les points de contrôle

– déplacement ®modification de la courbe (plus ou moins locale) – toujours dans l'enveloppe convexe

– variation du nombre de points (« convergence » avec beaucoup de points)

=

=

n

i Nik t Pi

t C

0 , ( )

) (

Adapté à l'interactivité

Modélisation Géométrique 263

Méthode directe

Variation de l'ordre : influence

263

Méthode directe

Exemple récapitulatif (1)

Modélisation Géométrique 265

Méthode directe

Exemple récapitulatif (2)

265

Méthode directe

Insertion de nœuds (knot insertion) – opération de changement de base exacte

• plus de nœuds plus de points

– permet de rajouter des points localement (meilleur contrôle) – technique efficace d'affichage

suppression de nœuds (knot removal) – opération de changement de base approchée

• moins de nœuds moins de points

– compression de données et lissage

– technique coûteuse pour minimiser l'erreur (choix des nœuds à retirer)

Modélisation Géométrique 267

Méthode directe

Multiplicités dans les points de contrôle

Multiplicités dans les nœuds

)

et demi-tangentes en ti

si ti=ti+1=...=ti+k−2, C(ti)=Pi−1

Ni,k(t) est non nulle en ]ti,ti+k[ Ni-1,k(t) est non nulle en ]ti-1,ti+k-1[ Ni-2,k(t) est non nulle en ]ti-2,ti+k-2[

Seule fonction non nulle en ti

267

Méthode directe

Interpolation ou lissage + méthode directe – obtention de points de contrôle « significatifs » – techniques précédentes

Approche variationnelle (d'un critère)

– une première courbe

– un critère J (en général : énergie de déformation) – un voisinage V pour tous les points de contrôle – On cherche

• nombreux paramètres

• minima locaux

J

Modélisation Géométrique 269

Interpolation

On a (n+1) points, on veut une courbe qui passe par ces points

Interpolation (-lissage) : 2 problèmes – définir les valeurs paramétriques de passage zi

• difficulté fondamentale, des formules, pas LA bonne formule – uniforme, longueurs de cordes (avec ou sans exposant), ...

• tenir compte de la géométrie

– placer les points de jonction de la spline (breakpoints)

Þdéfinir le vecteur de nœuds T

Deux solutions

– Une courbe définie par (n+1) points de contrôle

– Une courbe définie par n arcs de splines (un entre chaque point)

, ...,n) i (i

n

i Nik tQi P C

t

C et i 0

0 , ( ) ( )

)

( =

=

=

=ζ

269

Interpolation

Une courbe définie par (n+1) points de contrôle – (n-k+2) intervalles paramétriques et (n-k+2) arcs de splines

élémentaires

• polynômes de degré k-1 se raccordant Ck-2

– si k=n+1 : Bézier ®1 arc unique

– si k=2 : un arc de spline entre chaque couple de points

• arc = segment de droite

– si 2 < k < n+1 plusieurs arcs de spline

• moins que d'intervalles entre les points de contrôle

– Il ne peut pas y avoir un point de jonction à chaque point de passage les points de jonction de la spline (breakpoints) : il faut les répartir

, ...,n) i (i

n

i Nik t Qi P C

t

C et i 0

0 , () ( )

)

( =

=

=

=ζ

Modélisation Géométrique 271

Interpolation

Solution 1 : avec (n-k+2) arcs de splines

– système linéaire (n+1,n+1) (en fait (n-1,n-1)) à résoudre – il faut définir T

– il faut bien répartir l'information sur tous les arcs – répartition « harmonieuse » des ti et des zi

• formule de De Boor

, ...,n)

Solution 1 : avec (n-k+2) arcs de splines – avantages

• même formulation pour tous les ordres

– attention à l'augmentation rapide du conditionnement du système

• formulation homogène avec le lissage – le système est (n+1,m+1) (m<n) – résolution aux moindres carrés

, ...,n)

Modélisation Géométrique 273

Interpolation

Solution 2 : avec n arcs de splines

– on prend un point de jonction à chaque point de passage

• pas de vecteur de nœuds à définir

– k=4 pour avoir une formulation matricielle stable (limitatif)

– n arcs, k = 4 Þ(n+3) points de contrôle pour la spline globale – vision 1

• (n+3) points de contrôle et (n+1) conditions de passage Þ 2 points libres

– vision 2

• n cubiques (définies par 4 points) : 4 n points à définir

• conditions C0: 2n (2 par arcs)

• conditions C1: n-1 (raccordements entre les n arcs)

• conditions C2: n-1 (raccordements entre les n arcs)

– avantages

• système tridiagonal pour certaines conditions d'extrémités

• choix des conditions d'extrémités versus choix du vecteur de noeuds

273

Hypothèse fondamentale

– (nu+1)(nv+1) points Pijde l'espace a priori distincts – définissant un maillage « régulier »

– pointsgénéralement bruités

Méthode directe

Interpolation - Lissage

– mu=nu et mv=nv : interpolation

– mu<nu et/ou mv<nv : lissage (moindres carrés) Surfaces : introduction

S(ζi,ηj)=Pij =

Modélisation Géométrique 275

Esthétique

Cartesde courbures – Choix de la courbure

– Choix des échelles de couleur

• Les couleurs et leurs répartitions

– Affichage d'informations complémentaires

• Ex : directions principales en champ de vecteurs

– Interprétation délicate ET manuelle

Energie de déformation – Hypothèses :

• Élasticité linéaire

• Petites déformations

• Plaque mince donnée par z=f(x,y)

Energie de déformation (suite) – Hypothèse sup. : g= 0

– On peut montrer que :

– En paramétrique

– Très lourd à calculer

– Beaucoup de simplifications … parfois hasardeuses

Modélisation Géométrique 277

Analyse de surfaces

Calcul d'ombrage, rendu réaliste – Facettes sur la surface

– Affichage de la scène lié à la normale (perte de la courbure) – Peu efficace

Cartes de courbures

– Courbure prise comme une surface (ex : k(u,v))

– Quelle(s) courbure(s) ? (Hº0, Kº0 ?) (gaussienne, moyenne, absolue, …)

– Couleurs, courbes de niveau ?

Surfaces adjointes

– F(u,v)=S(u,v) +f(u,v) N(u,v)

• S de vecteur normal N

• F à définir (en particulier en fonction des courbures)

– Effets « spectaculaires » 277

Analyse de surfaces

Tracé de lignes sur la surface – Courbes isoparamétriques – Lignes de niveaux – Lignes de courbures – Lignes asymptotiques – Lignes isophotes

• Lignes d'intensité lumineuse égale : I.n = cste = cos (a)

• Informations

– Lignes de reflet

• Lignes image d'une série de ligne lumineuse plane, un point de vue choisi

• Surface miroir

• Très utilisé en carrosserie (suite de néons //)

Modélisation Géométrique 279

Analyse de surfaces

Un exemple de lignes de reflet

279

Analyse de surfaces

Un autre exemple de lignes de reflet

Modélisation Géométrique 281

Analyse de surfaces

281

Analyse de surfaces

exemple

de lignes de reflet

Modélisation Géométrique 283

Analyse de surfaces

Exemples

Peinture … Difficilement

perceptible

283

Analyse de surfaces

Exemples

Modélisation Géométrique 285

Analyse de surfaces

Un dernier

285

Correction de surface

Déplacement de points – Direct

– A partir d'opérateurs de déformation

Travail sur des courbes

– Lignes et colonnes de points de contrôle définissent des courbes

• Non sur la surface

Réseau de barres (Léon 1994) – Polyèdre = réseau de barres – Nœuds fixes et nœuds libres

– Rigidité dans les barres : équilibre initial

– Forces appliquées : nouvel équilibre (système linéaire)

Modélisation Géométrique 287

Correction de surface

Lignes de reflet (Klass 80) – Calcul des lignes de reflet

– L'opérateur modifie les lignes de reflet

– Calcul des points de contrôle pour obtenir ces lignes

• Non linéaire !

• Implémenté dans certains systèmes

Amélioration du polyèdre (Bousquet 97) – Redressement des pôles non sur l'enveloppe convexe – Régularisation du polyèdre de contrôle

– Possibilité de travailler par zone – Simple et très efficace

287

Correction de surface

Energie de déformation

– Ou souvent une approximation de celle-ci – Déplacement d'un point à la fois (Hadenfeld 94)

• Celui qui a le plus d'action sur l'énergie (calculs lourds)

– Approche variationnelle

• Un critère d'énergie J

• Un voisinage autour de chaque point

• On cherche la position des points dans leur voisinage qui minimise J

• En règle général :

• Approche discrète : frontière fixe :

• Approche continue : efficace mais très lourd

• Approche discrète : efficace et beaucoup plus rapide

J= ∫∫k12+k22 ds= ∫∫(4H22K) ds

J= 4Hij 22Kij

J= 4Hij

2

Modélisation Géométrique 289

Méthode directe

On a un réseau de (nu+1)(nv+1) points de contrôle Pij

Voir les courbes pour les différentes possibilités

Très difficile sans outils d'aide

Intérêt à travailler par ligne et colonne de points

Problème des outils de désignation en 3D …

S(u,v)=

i=0 nu

j=0 nv

Pij Ni,ku(u) Nj,kv(v)

289

Interpolation -lissage

(nu+1)(nv+1) points Pij

– On cherche un réseau de (nu+1)(nv+1) points de Qij: interpolation – On cherche un réseau de (mu+1)(mv+1) points de Qij: lissage

– Choix des valeurs paramétriques :

• Comme pour les courbes

• Plus structure régulière des points Pij

– Beaucoup de paramètres à fixer

Système linéaire ((nu+1)(nv+1),(nu+1)(nv+1)) – Complexité en a(nu+1)3(nv+1)3

– Possibilité de voir le problème comme l'interpolation croisée sur des

S(ζi,ηj)=Pij =

i=0 mu

j=0 mv

Qij ϕi(ζi) ψj(ηj) (i= 0, ...,nu) (j= 0, ..., nv)

Modélisation Géométrique 291

Interpolation -lissage

Autre approche : cas des points « quelconques » – En particulier en reconstruction

• Surface connue approchant le nuage de points

• Projections sur cette surface

• Déduction de valeurs paramétriques pour chaque Pij

• Calcul d'une surface

• Projection des points Pijsur la surface

• Correction de la paramétrisation

291

Remplissage de carreau

Créer une surface s'appuyant sur 4 courbes frontières – S(u,0), S(u,1), S(0,v), S(1,v) (u,v)Î[0,1]x[0,1]

Idée de Coons (67)

– Interpolation de S(0,v) et S(1,v) : S1 – Interpolation de S(u,0) et S(u,1) : S2

– S(u,v) = S1(u,v) + S2(u,v) -terme_correctif(u,v)

S(u,v)=[1−u u] # S(0,v)S(1,v)

$ % &

' ( +[1−v v] # S(u,0)S(u,1)

$ % &

' (

- 1−[ u u] # S(0,0)S(1,0) S(0,1)S(1,1)

$ % &

' ( 1−v v

#

$ % &

' ( Vérification :

S(1,v)

S(u,0) S(0,v)

S(u,1)

S(1,1)

S(0,1) S(0,1)

S(0,0)

Modélisation Géométrique 293

Remplissage de carreau

1-u et u sont des fonctions de mélange (blending functions) – Se généralisent sous la forme a0et a1avec :

a0(u) = 1 -a1(u)

a0(0) = 0

a0(1) = 1

Courbes frontières : en général des cubiques de Hermite : – Valeurs au extrémités

– Dérivée en ces points

Schéma C0: insuffisant

Schéma C1en se donnant : – même principe

Technique simple de remplissage de trous entre carreaux

∂S(u, 0)

∂v ,∂S(u,1)

∂v ,∂S(0,v)

∂u ,∂S(1,v)

∂u

293

Limitations

Forme produit tensorielle : extrêmement puissante

Mais de réelles limites due au « réseau régulier » de points Une géométrie particulière des données

Modélisation Géométrique 295

Problème d'utilisation : Un exemple industriel

11235 pôles ...

nombre de pôles en u : 535 nombre de pôles en v : 21 entre pôles sur u : ~10-4m entre pôles sur v : ~10-3m

rentre dans un cube de côté 10-1 m

m 0.0955 (1,0)

S (0,0)

S =

m 0.0407 (0,1)

S (0,0)

S =

295

Problème d'utilisation : Un exemple industriel

Une pièce de fonderie – Hauteur : »4,5 m

Modélisation Géométrique 297

Problème d'utilisation : Un exemple industriel

Pièce a : 9x37 points de contrôle (333)

Après amélioration 4x15 points de contrôle

297

Problème d'utilisation : Un exemple industriel

Pièce b : 28x24 points de contrôle (672)

Après amélioration 5x6 points de contrôle

Modélisation Géométrique 299

Le coin de valise

Première version

1

2 3

1' 1''

2''

2' 3''

3'

299

Le coin de valise

Deuxième version

Modélisation Géométrique 301

Géométrie « irrégulière »

301

Géométrie quelconque

Modélisation Géométrique 303

Une « mauvaise » réponse

Faire dégénérer des quadrilatères en triangles

Crée des singularités : ne pas généraliser

S'intéresser à des modèles à partir de triangles

303

Carreau triangulaire de Bézier

Coordonnées barycentriques d'un point P – Sur un segment : couple unique (t,1-t) avec tÎ[0,1] :

P = t P1+ (1-t) P2

– Sur un triangle : triplet unique (l1, l2, l3)

P1 P P2

λi≥0 λi=1

i=1 3

P1P12P23P3

%

&

' ' ( ' '

P P1

P2

P3

λi = aire(triangle(PjPPk))

aire(triangle(PPP)) j≠i et ki

Modélisation Géométrique 305

Carreau triangulaire de Bézier

Polynôme de Bernstein de degré n sur un triangle

– Cas particulier , l3= 0 : l2= 1 -l1

Carreau triangulaire de Bézier de degré n

– (u,v) point d'un triangle de coordonnées barycentriques (l1, l2, l3) – Pijk: points de contrôle

Bi,nj,k123)= n!

i!j!k!λ1 iλ2

jλ3

k i+j+k =n

Bi,nj,012,0)= n!

i!j!0!λ1iλn−i2

S(u,v)= Pijk

i+j+k=n

Bi,j,k

n 123)

305

Carreau triangulaire de Bézier

Carreau triangulaire de Bézier de degré n

– Cas n = 1

– Cas n = 3

S(u,v)= Pijk

i+j+k=n

Bi,j,k

n 12,λ3)

P003

P030

P300

P111

P102 P201

P012

P021

P120

P210

t3 3rt2 3r2t 3st2 6rst

3s2t 3rs2 3r2s

r3 s3

Modélisation Géométrique 307

Carreau triangulaire de Bézier

Propriétés – Points extrêmes – Courbes frontières – Tangence

– Raccordement

• entre triangles ou avec des quadrilatères

– …

Une géométrie particulière des données – Différente de la forme produit tensoriel Non quelconque(sauf pour n=1)

P003

P030

P300

P111

P102 P201

P012

P021

P120

P210

t3 3rt2 3r2t 3st2 6rst

3s2t 3rs2 3r2s

r3 s3

307

Quelques problèmes dérivés

Surfaces découpées (restriction), raccordements, surfaces décalées

Modélisation Géométrique 309

Problèmes dérivés

Un objet complexe de peut pas être réduit à une surface – Plusieurs surfaces combinées entre elles pour former un objet Toutes les techniques se combinent

Liaison simple

Raccordement

+

+

309

Raccordements

Raccordement suivant un bord commun (G1, G2, …) – Raccordements avec n côtés (sur-contrainte)

Surfaces de mélange

– Remplissage de carreau à partir des bords du patch – Remplissage à partir de nouvelles courbes d'appui

• Courbes d'intersection (ex aile-carlingue)

• Courbes de contact

Modélisation Géométrique 311

Raccordements

Boule roulante (Rolling ball) – Rayon fixe

– Rayon variable

311

Surface restreinte

Une surface restreinte (trimmed surface) est une surface limitée par une courbe de restriction ou découpage (trimmed curve)

– La courbe est définie dans le plan paramétrique

• Résultat d'un calcul d'intersection

• En général connue de façon polygonale

• Convertie ensuite en courbe B-splines ou NURBS dans le paln paramétrique – Approximation

Dépassement de la contrainte topologique

Modélisation Géométrique 313

Surface restreinte

A priori une courbe de restriction externe

Une ou plusieurs courbes de restriction interne – trous éventuels

Le sens de description indique la partie à conserver

313

Courbe et surface décalée

Offset curve - Offset surface

Problème de fabrication : trajectoire du centre de l'outil

Création d'objets parallèles – Moules, ….

Apparition de la notion d'offset généralisé (R(u,v))

– Gestion de l'épaisseur variable

C

offset

(u) = C (u) + R.N (u)

S

offset

(u, v) = S(u, v) + R.N (u, v)

Modélisation Géométrique 315

Courbe et surface décalées

Difficultés

Apparition de singularités

– Rebroussement, auto-intersection, …

La nature mathématique de l'offset ≠ celle de l'objet initial – Sauf certaines NURBS

– Non intégration au modèle mathématique

C

offset

(u) = C (u) + R.N (u)

S

offset

(u, v) = S(u, v) + R.N (u, v)

315

Quatrième partie

Dans le document Modélisation géométrique (Page 123-158)

Documents relatifs