Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes...

79
Une Introduction aux Algorithmes Une Introduction aux Algorithmes de la Conception Géométrique de la Conception Géométrique Geometry Design Tutorial 1 Instituto Tecnológico de Veracruz 21-25 April 2008 Fathi El-Yafi Project and Software Development Manager Engineering Simulation

Transcript of Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes...

Page 1: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Une Introduction aux AlgorithmesUne Introduction aux Algorithmesde la Conception Géométriquede la Conception Géométrique

Geometry Design Tutorial 1Instituto Tecnológico de Veracruz 21-25 April 2008

Fathi El-YafiProject and Software Development Manager

Engineering Simulation

Page 2: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométries: Aperçu Général

• Géométrie� Définitions

� Data

� Sémantique

• Topologie� Mathématiques

Geometry Design Tutorial 2Instituto Tecnológico de Veracruz 21-25 April 2008

� Mathématiques� Hiérarchie

• Approche CSG• Approche BREP

� Courbes

� Surfaces

Page 3: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie: Concepts

Sommets:Position(x,y,z)

Geometry Design Tutorial 3Instituto Tecnológico de Veracruz 21-25 April 2008

Page 4: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 4Instituto Tecnológico de Veracruz 21-25 April 2008

Page 5: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 5Instituto Tecnológico de Veracruz 21-25 April 2008

Page 6: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 6Instituto Tecnológico de Veracruz 21-25 April 2008

volumes: ensemble de surfaces fermées

Page 7: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 7Instituto Tecnológico de Veracruz 21-25 April 2008

Corps: ensemble de volumesvolumes: ensemble de

surfaces fermées

Page 8: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 8Instituto Tecnológico de Veracruz 21-25 April 2008

volumes: ensemble de surfaces fermées

Corps: ensemble de volumes

boucle: ensemble d’arêtes ordonnés

Page 9: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

coedges: orientationd’arête respectant la boucle

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 9Instituto Tecnológico de Veracruz 21-25 April 2008

volumes: ensemble de surfaces fermées

Corps: ensemble de volumes

boucle: ensemble d’arêtes ordonnés

Page 10: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

coedges: orientationd’arête respectant la boucle

surfaces:ensemble d’arêtes fermées

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 10Instituto Tecnológico de Veracruz 21-25 April 2008

volumes: ensemble de surfaces fermées

Corps: ensemble de volumes

boucle: ensemble d’arêtes ordonnés

shell: ensemble orienté de surfaces comportant un volume

Page 11: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

coface: surface

surfaces:ensemble d’arêtes fermées

coedges: orientationd’arête respectant la boucle

Sommets:Position(x,y,z)

arêtes:reliées par deux sommets

Géométrie: Concepts

Geometry Design Tutorial 11Instituto Tecnológico de Veracruz 21-25 April 2008

surfaceorienté respectantla shell

volumes: ensemble de surfaces fermées

Corps: ensemble de volumes

boucle: ensemble d’arêtes ordonnés

shell: ensemble orienté de surfaces comportant un volume

Page 12: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie: Concepts

Volume 1

Surface 11

Géométrie Manifold : Chaque volume maintient son propre ensemble de surfaces uniques

Geometry Design Tutorial 12Instituto Tecnológico de Veracruz 21-25 April 2008

Volume 1

Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6

Volume 2

Surface 8 Surface 9 Surface 10 Surface 11

Surface 7

Volume 2

Surface 7

surfaces uniques

Page 13: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie: Concepts

Volume 1

Géométrie Non Manifold : Les volumes partagent des surfaces coïncidentes

Geometry Design Tutorial 13Instituto Tecnológico de Veracruz 21-25 April 2008

Volume 1

Surface 1 Surface 2 Surface 3 Surface 4 Surface 5 Surface 6

Volume 2

Surface 8 Surface 9 Surface 10

Surface 7

Volume 2

Surface 7

Page 14: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Geometry: Data

• Modèle– Filaire– Surface– Volume

• Séparation des Attributs des Données Géométriques

Geometry Design Tutorial 14Instituto Tecnológico de Veracruz 21-25 April 2008

• Séparation des Attributs des Données Géométriques• Attributs

– Couleurs– Paramètres– Etc.

• Objets Graphiques• Parts Visibles

Page 15: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sémantique: Surface-Volume-Déflection-Défauts

Geometry Design Tutorial 15Instituto Tecnológico de Veracruz 21-25 April 2008

Page 16: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sémantique: Surfaces et Lignes Caractéristiques

Geometry Design Tutorial 16Instituto Tecnológico de Veracruz 21-25 April 2008

Page 17: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sémantique: Détails

Geometry Design Tutorial 17Instituto Tecnológico de Veracruz 21-25 April 2008

Page 18: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sémantique: Détail-Maillage-Boite Englobante

Geometry Design Tutorial 18Instituto Tecnológico de Veracruz 21-25 April 2008

Page 19: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Sémantique: Décomposition–Courbure-STL-Maillage FEM

Geometry Design Tutorial 19Instituto Tecnológico de Veracruz 21-25 April 2008

Page 20: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Modèle Filaire: Limites

Geometry Design Tutorial 20Instituto Tecnológico de Veracruz 21-25 April 2008

Page 21: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Eléments de Topologie

Topologie??

• Notion d’intérieur et d’extérieur

• Orientation

Geometry Design Tutorial 21Instituto Tecnológico de Veracruz 21-25 April 2008

• Calcul fiable de paramètres élémentaires:volume, centre de gravité, axes d’inertie …

• Contour = surface orientable et d'aire finie

• Arbre de construction

Page 22: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Relations: (Géométrie, Topologie)

face

SolideVolume

Surface

Geometry Design Tutorial 22Instituto Tecnológico de Veracruz 21-25 April 2008

face

Contour

Surface

Courbe

Sommet

Arête

Point

Page 23: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Un contour "adhère" partout à son intérieur

Soit S un ensemble de R3

Adhérence : A(S)

P ∈ A( S) : tout voisinage de P contient un point de S

Topologie: Mathématiques

Geometry Design Tutorial 23Instituto Tecnológico de Veracruz 21-25 April 2008

P ∈ A( S) : tout voisinage de P contient un point de S

Intérieur : I(S)

P ∈ I( S) si ∃ V(P) ⊂ S

Frontière : B(S)

P ∈ B( S) si P ∈ A( S) et P ∈ A( C(S)) où C(S) désigne le complémentaire de S dans R3

Page 24: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Ouvert : S = A(S)

Fermé : S = I(S)

Topologie: Mathématiques

Geometry Design Tutorial 24Instituto Tecnológico de Veracruz 21-25 April 2008

Solide régulier S = A(I(S)) : adhérence de son intérieur = R(S)

Page 25: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

A ∩∩∩∩ B = R(A∩B)A ∪∪∪∪ B = R(A∪B)A - B = R(A-B)C(A) = R(C(A))

Opérateur de Régularisation

Topologie: Mathématiques

Geometry Design Tutorial 25Instituto Tecnológico de Veracruz 21-25 April 2008

A

B

A ∩∩∩∩ B

R(A ∩∩∩∩ B)A

A - B

R(A – B)

Page 26: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

A B

Opérateur de Régularisation

Topologie: Mathématiques

Geometry Design Tutorial 26Instituto Tecnológico de Veracruz 21-25 April 2008

A ∪∪∪∪ B

A B

C(A)/B

R(C(A)/B)

Page 27: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Formule d’Euler: S + F = A + 2

Topologie: Mathématiques

Polyèdre Type des FacesF S A

Tétraèdre Triangles équilatéraux 4 4 6

Octaèdre Triangles équilatéraux 8 6 12

Geometry Design Tutorial 27Instituto Tecnológico de Veracruz 21-25 April 2008

F = nombre de faces, S = nombre de sommetsA = nombre d’arêtes

Cube Carrés 6 8 12

Dodécaèdre Pentagones12 20 30

Icosaèdre Triangles équilatéraux 20 12 30

Page 28: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Démonstration de Cauchy (1789-1857)

V+F=E+2 V+F=E+1 V+F+1=(E+1)+1 V+F=E+1

Topologie: Mathématiques

Geometry Design Tutorial 28Instituto Tecnológico de Veracruz 21-25 April 2008

V+F=E+2 V+F=E+1 V+F+1=(E+1)+1 V+F=E+1

V+F=E+1 V+F=E+1 (V-2)+F=(E-2)+1 V+F=E+1

3+1=3+1!!

Page 29: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Examples de Maillage

F = 3844S = 1924A = S + F –2 = 5766

Topologie: Mathématiques

Geometry Design Tutorial 29Instituto Tecnológico de Veracruz 21-25 April 2008

F = 47566S = 23793A = S + F –2 = 71357

Page 30: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Topologie : Hiérarchie

Geometry Design Tutorial 30Instituto Tecnológico de Veracruz 21-25 April 2008

Page 31: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Représentation constructivePrimitives volumiques paramétréesTransformationsOpérations booléennes : Union, intersection, différence entre des objets

CSG : Constructive Solid Geometry

Geometry Design Tutorial 31Instituto Tecnológico de Veracruz 21-25 April 2008

Notion de grapheAvantage :Description simple

Simulation « Usinage » des objets

Page 32: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

CSG: Primitives

Geometry Design Tutorial 32Instituto Tecnológico de Veracruz 21-25 April 2008

Page 33: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

U

CSG: Opérateurs Booléens

Union

Geometry Design Tutorial 33Instituto Tecnológico de Veracruz 21-25 April 2008

U

Page 34: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Union

U

CSG: Opérateurs Booléens

Geometry Design Tutorial 34Instituto Tecnológico de Veracruz 21-25 April 2008

U

Page 35: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Soustraction

CSG: Opérateurs Booléens

Geometry Design Tutorial 35Instituto Tecnológico de Veracruz 21-25 April 2008

U

-

Page 36: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Commun

CSG: Opérateurs Booléens

Geometry Design Tutorial 36Instituto Tecnológico de Veracruz 21-25 April 2008

Page 37: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Congés

CSG: Opérateurs Booléens

Geometry Design Tutorial 37Instituto Tecnológico de Veracruz 21-25 April 2008

Page 38: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie: Courbes

Point de rebroussement

us(u)

x, y, z fonction de u, dérivée première continue

Geometry Design Tutorial 38Instituto Tecnológico de Veracruz 21-25 April 2008

Point multiple

Longueur d’arc, abscisse curviligne

0

2 2 2 2

2 2 2

ds = dx + dy + dz

( )u

u

dx dy dzs u du

du du du = + +

u

u=u0

s(u)

τ(s) τ(s+ds)

Page 39: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Courbure

Geometry Design Tutorial 39Instituto Tecnológico de Veracruz 21-25 April 2008

Page 40: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Courbure

Geometry Design Tutorial 40Instituto Tecnológico de Veracruz 21-25 April 2008

Page 41: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

O

n

Rayon duCercle Osculateur

=Rayon de Courbure

nOM

ρ=

Géométrie : Courbure

Geometry Design Tutorial 41Instituto Tecnológico de Veracruz 21-25 April 2008

M

ρ

Courbe paramétrique:

Equation de courbe y = f(x):

Page 42: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Repère de Frenet

2

2

2 2

2 2

2

2

( ) et n( )

d xdxdsds

dOM dy d OM d yu u

ds ds ds dsdz d zds ds

τ

= =

Geometry Design Tutorial 42Instituto Tecnológico de Veracruz 21-25 April 2008

n = normale Principale

t

OM(s+dh1)

OM(s+dh2)

OM(s)

Page 43: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Torsion

M(s)

M(s+ds)

Geometry Design Tutorial 43Instituto Tecnológico de Veracruz 21-25 April 2008

Plan Osculateur at M(s)

Torsion

Page 44: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Arbre de Transmission

2

2

2

2

2

2

2 2 2 2 2 2 2 2

2 2

= -R c o s = -R s inx = R c o s

y = R s in , = R c o s , = -R s in

z = p = p = 0

a in s i e t d o n c s =

R = - s in

d xd xdd

d y d y

d dd z d zd d

d s d x d y d z R p R p

d x

d s R p

θθ θθθθ θ θ

θ θθ

θ θ

θ

θ

= + + = + + ×

+

2

2 2 2

R = - c o s

d x

d s R pθ

+

Geometry Design Tutorial 44Instituto Tecnológico de Veracruz 21-25 April 2008

2 2

R =

d s R p

d y

d s Rτ

+ 2 2 2

2

2 2 2 2 22 2

2

22 2

2 2

2 22 2

2 2

= - c o s

R Rco s e t = - s in a v ec =

p = 0 =

ps in

-p p c o s e t d o n c

R

d s R p

d d y

d s d s R p R pp

d zd z

d sd s R p

R p

d bb n T T

d s R pR p

R p

τθ θ ρ

θ

τ θ

+

+ ++ +

+= × = =

++ +

Page 45: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

-1-0.5

00.5

1

-1-0.5

00.5

1

3-1

-0.500.5

1 -1-0.5

00.5

1

-1

-0.5

00.5

1

3

-1

-0.5

00.5

1

Discrétisation

Géométrie : Arbre de Transmission

Geometry Design Tutorial 45Instituto Tecnológico de Veracruz 21-25 April 2008

0

1

2

0

1

2

Page 46: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Frenet – SerretRéférence, Equations, Courbure, Torsion

Frenet Reference:

The Frenet - Serret equations are a convenient framework for analyzing curvature. T(s) is the unit tangent to the curve as a function of path length s.N(s) is the unit normal to the curve B(s) is the unit binormal; the vector cross product of T(s) and N(s).

Geometry Design Tutorial 46Instituto Tecnológico de Veracruz 21-25 April 2008

Frenet Equations:

Frenet Reference:

For any parametric function f(t), the expression of the curvature and the torsion are the following:

Page 47: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Courbure (Gaussian, Average)

Courbure Gaussienne

Geometry Design Tutorial 47Instituto Tecnológico de Veracruz 21-25 April 2008

Courbure Moyenne

Courbure Cmap

Page 48: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Courbure Gaussienne = 2

1

R

Sphère

Géométrie : Courbure (Gaussian, Average)

Geometry Design Tutorial 48Instituto Tecnológico de Veracruz 21-25 April 2008

R

Courbure Moyenne = 1_R

Page 49: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Tore

Géométrie : Courbure (Gaussian, Average)

Geometry Design Tutorial 49Instituto Tecnológico de Veracruz 21-25 April 2008

Gaussienne Moyenne

Page 50: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Courbure

Tore

Geometry Design Tutorial 50Instituto Tecnológico de Veracruz 21-25 April 2008

Page 51: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Surfaces de Révolution

-1-0.5

00.5

1

-1-0.5

00.5

1

2

3

4-1-0.5

00.5

1

2

4

-1-0.5

00.51

Geometry Design Tutorial 51Instituto Tecnológico de Veracruz 21-25 April 2008

0

1 -4

-2

0

2

4-4

-2

0-1

-0.5

-4

-2

0

2

4

-1-0.5

0

0.5

1

-1

-0.5

0

0.5

1

-1

-0.5

0

0.5

1

-1-0.5

0

0.5

1

-1

-0.5

0

0.5

1

Page 52: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Surfaces Particulières

20

40

-100

10

Ruban de Möbius

Geometry Design Tutorial 52Instituto Tecnológico de Veracruz 21-25 April 2008

-25

0

25

50

-40

-20

0

20-10

-25

0

25

50

Page 53: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bouteille de Klein

Géométrie : Surfaces Particulières

Geometry Design Tutorial 53Instituto Tecnológico de Veracruz 21-25 April 2008

Page 54: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bouteille de Klein

Géométrie : Surfaces Particulières

Geometry Design Tutorial 54Instituto Tecnológico de Veracruz 21-25 April 2008

Page 55: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bouteille de Klein: Courbure

Géométrie : Surfaces Particulières

Geometry Design Tutorial 55Instituto Tecnológico de Veracruz 21-25 April 2008

Page 56: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Surface de Kuen

Géométrie Surfaces Particulières

Geometry Design Tutorial 56Instituto Tecnológico de Veracruz 21-25 April 2008

x=2*(cos(u)+u*sin(u))*sin(v)/(1+u*u*sin(v)*sin(v))

y=2*(sin(u)-u*cos(u))*sin(v)/(1+u*u*sin(v)*sin(v))

z=log(tan(v/2))+2*cos(v)/(1+u*u*sin(v)*sin(v))

Page 57: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Surfaces de Dini

Géométrie : Surfaces Particulières

Geometry Design Tutorial 57Instituto Tecnológico de Veracruz 21-25 April 2008

x=a*cos(u)*sin(v)y=a*sin(u)*sin(v) z=a*(cos(v)+log(tan((v/2))))+b*ua=1,b=0.2,u={ 0,4*pi},v={0.001,2}

Page 58: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Astéroïde

Géométrie : Surfaces Particulières

Geometry Design Tutorial 58Instituto Tecnológico de Veracruz 21-25 April 2008

x= pow (a*cos(u)*cos(v),3) y= pow (b*sin(u)*cos(v),3) z= pow (c*sin(v),3)

Page 59: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Surface «Derviche»

Géométrie : Surfaces Particulières

Geometry Design Tutorial 59Instituto Tecnológico de Veracruz 21-25 April 2008

Page 60: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Courbes

Lagrange Interpolating Polynomial

Geometry Design Tutorial 60Instituto Tecnológico de Veracruz 21-25 April 2008

The Lagrange interpolating polynomial is the polynomial P(x) of degree <= (n-1)that passes through the n points (x1,y1= f(x1)), x2,y2= f(x2)), ..., xn,yn= f(xn)),and is given by:

Page 61: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Lagrange Interpolating Polynomial

Where:

Géométrie : Courbes

Geometry Design Tutorial 61Instituto Tecnológico de Veracruz 21-25 April 2008

Written explicitly:

Page 62: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Cubic Spline Interpolating Polynomial

Géométrie : Courbes

Geometry Design Tutorial 62Instituto Tecnológico de Veracruz 21-25 April 2008

A cubic spline is a spline constructed of piecewisethird-order polynomials which pass through a set of m control points. The second derivative of each polynomial is commonly set to zero at the endpoints, since this provides a boundary condition that completes the system of m -2 equations.This produces a so-called "natural" cubic spline and leads to a simple tridiagonal systemwhich can be solved easily to give the coefficients of the polynomials.However, this choice is not the only one possible, and other boundary conditions can be used instead.

Page 63: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Consider 1-dimensional spline for a set of n+1 points (y1, y2, .., yn),let the ith piece of the spline be represented by:

Where t is a parameter and i = 0, …, n-1 then

Cubic Spline Interpolating Polynomial

Géométrie : Courbes

Geometry Design Tutorial 63Instituto Tecnológico de Veracruz 21-25 April 2008

Rearranging all these equations,leads to the following beautifullysymmetric tridiagonal system:

If the curve is instead closed, the system becomes

Page 64: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Cubic Spline/Lagrange

1

2

1

2

Géométrie : Courbes

Geometry Design Tutorial 64Instituto Tecnológico de Veracruz 21-25 April 2008

1 2 3 4 5 6 7

-3

-2

-1

1 2 3 4 5 6 7

-5

-4

-3

-2

-1

Page 65: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bézier

Given a set of n + 1 control points P0, P1, .., Pn, the corresponding Bèzier curve (or Bernstein- Bèzier curve) is given by:

Géométrie : Courbes

Geometry Design Tutorial 65Instituto Tecnológico de Veracruz 21-25 April 2008

Where Bi,n(t) is a Bernstein polynomial and .

A "rational" Bézier curve is defined by:

where p is the order, Bi,p are the Bernstein polynomials,Pi are control points, and the weight Wi of Pi is the last ordinate of the homogeneousPoint Pi

w. These curves are closed under perspective transformations, and can representconic sections exactly.

Page 66: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bézier:Properties

� The Bézier curve always passes through the first and last control points.

Géométrie : Courbes

Geometry Design Tutorial 66Instituto Tecnológico de Veracruz 21-25 April 2008

� The curve is tangent to P1–P0 and Pn–Pn-1 at the endpoints.

� The curve lies within the convex hull of the control points.

Page 67: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bézier:Properties

� A desirable property is that the curve can be translated and rotated by performing these Operations on the control points.

Géométrie : Courbes

Geometry Design Tutorial 67Instituto Tecnológico de Veracruz 21-25 April 2008

� Undesirable properties of Bézier curves are their numerical instability for large numbers of control points, and the fact that moving a single

control point changes the global shape of the curve .

Page 68: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bézier: Bernstein Polynomials

Bin(t) = Cn

i (t-1)n-iti , Cni = n! / i!(n-i)!

Bi j(t) = (1-t)Bi

j-1(t) + t Bi-1j-1(t)

Géométrie : Courbes

Geometry Design Tutorial 68Instituto Tecnológico de Veracruz 21-25 April 2008

B0 1(t) = (1-t)B0

0(t) + t B-10(t)

B1 1(t) = (1-t)B1

0(t) + t B00(t)

B0 2(t) = (1-t)B0

1(t) + t B-11(t)

Page 69: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Bézier: Bernstein Polynomials

•Unit Partition: Σi=0,n Bin(t) = 1

Bi j(t) = (1-t)Bi

j-1(t) + t Bi-1j-1(t)

Géométrie : Courbes

Geometry Design Tutorial 69Instituto Tecnológico de Veracruz 21-25 April 2008

•0<=B in(t)<= 1

•Bin(0) = 0 et Bi

n(1) = 0

•B0n(0) = 1

•Bnn(1) = 1

Page 70: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

B-Spline

A B-Spline is a generalization of the Bézier curve.Let a vector known as the knot vector be defined

T = {t0, t1, …, tm},

Géométrie : Courbes

Geometry Design Tutorial 70Instituto Tecnológico de Veracruz 21-25 April 2008

where T is a no decreasing sequence with ,and define control points P0, ..., Pn.Define the degree as: p = m-n-1

The "knots“ tp+1, ..., tm-p-1 are called internal knots.

Page 71: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

B-Spline

�Define the basis functions as:

Géométrie : Courbes

Geometry Design Tutorial 71Instituto Tecnológico de Veracruz 21-25 April 2008

�Then the curve defined by: is a B-spline.

�Specific types include the non periodic B-spline(first p+1 knots equal 0 and last p+1 equal to 1; illustrated above)and uniform B-spline (internal knots are equally spaced).

�A curve is p - k times differentiable at a point where k duplicate knot values occur.

�A B-spline with no internal knots is a Bézier curve.

Page 72: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

NURBS-Curve

A non uniform rational B-spline curve defined by:

Géométrie : Courbes

Geometry Design Tutorial 72Instituto Tecnológico de Veracruz 21-25 April 2008

where p is the order, Ni,p are the B-Spline basis functions, Pi are control points,and the weight Wi of Pi is the last ordinate of the homogeneous point Pi

w.These curves are closed under perspective transformations, and can representconic sections exactly.

Page 73: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Conics

P(t) = w N t P t

w N t

i i i

i

i

i i

i

i

×

=

=

×

=

=

,

,

( ) ( )

( )

2

0

3

2

0

3

Géométrie : Courbes

Geometry Design Tutorial 73Instituto Tecnológico de Veracruz 21-25 April 2008

Parabola w=1

Hyperbole w=4 Ellipse w=1/4

i =0

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

Page 74: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

•NURBS of degree 2•Control points (Isosceles triangle)•Knot vector (0,0,0,1,1,1)

Arcs

Géométrie : Courbes

Geometry Design Tutorial 74Instituto Tecnológico de Veracruz 21-25 April 2008

Page 75: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Circles

(0, 0, 0, 1/3, 1/3, 2/3, 2/3, 1, 1, 1)

Géométrie : Courbes

Geometry Design Tutorial 75Instituto Tecnológico de Veracruz 21-25 April 2008

(0, 0, 0, 1/4, 1/4, 1/2, 1/2, 3/4, 3/4, 1, 1, 1)

Page 76: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

Géométrie : Surfaces

A given Bézier surface of order (n, m) is defined bya set of (n + 1)(m + 1) control points ki,j.

Bézier

evaluated over the unit square, where:

Geometry Design Tutorial 76Instituto Tecnológico de Veracruz 21-25 April 2008

evaluated over the unit square, where:

is a Bernstein polynomial, and

is the binomial coefficient.

Page 77: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

S(u,v) = Σi=0,nΣj=0,m Bin(u) Bj

m(v) Pij

(n+1)(n+1) points Pij

Bézier

Géométrie : Surfaces

Geometry Design Tutorial 77Instituto Tecnológico de Veracruz 21-25 April 2008

Pi(v) = Σj=0,m Bjm(v)Pij

Page 78: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

NURBS

Géométrie : Surfaces

Geometry Design Tutorial 78Instituto Tecnológico de Veracruz 21-25 April 2008

NURBS are nearly ubiquitous for computer-aided design (CAD), manufacturing (CAM), and engineering (CAE)and are part of numerous industry wide used standards,such as IGES, STEP, ACIS, Parasolid.

Page 79: Une Introduction aux Algorithmes de la Conception Géométrique · Une Introduction aux Algorithmes de la Conception Géométrique Instituto Tecnológico de Veracruz Geometry Design

NURBS: PropertiesNURBS curves and surfaces are useful for a number of reasons:

�They are invariant under affine as well as perspective transformations.

�They offer one common mathematical form for both standard analytical shapes(e.g., conics) and free-form shapes.

Géométrie : Surfaces

Geometry Design Tutorial 79Instituto Tecnológico de Veracruz 21-25 April 2008

�They are generalizations of non-rational B-Splines and non-rational and rational Béziercurves and surfaces.

(e.g., conics) and free-form shapes.

�They provide the flexibility to design a large variety of shapes.

�They reduce the memory consumption when storing shapes (compared to simpler methods).

�They can be evaluated reasonably quickly by numerically stable and accurate algorithms.