Boîte à outils mathématiques de base pour l infographie et l animation par ordinateur. Yves Chiricota, professeur DIM, UQAC Cours 8TRD147



Documents pareils
1S Modèles de rédaction Enoncés

Chapitre 0 Introduction à la cinématique

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

F411 - Courbes Paramétrées, Polaires

3 Approximation de solutions d équations

1 Complément sur la projection du nuage des individus

Deux disques dans un carré

Exercices Corrigés Premières notions sur les espaces vectoriels

1 radian. De même, la longueur d un arc de cercle de rayon R et dont l angle au centre a pour mesure α radians est α R. R AB =R.

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Fonctions de plusieurs variables

DURÉE DU JOUR EN FONCTION DE LA DATE ET DE LA LATITUDE

Calcul intégral élémentaire en plusieurs variables

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable

Angles orientés et fonctions circulaires ( En première S )

Fonctions de plusieurs variables

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Chapitre 2 : Caractéristiques du mouvement d un solide

Exo7. Matrice d une application linéaire. Corrections d Arnaud Bodin.

Planche n o 22. Fonctions de plusieurs variables. Corrigé

Cours 7 : Utilisation de modules sous python

Mesure d angles et trigonométrie

Fonctions de plusieurs variables : dérivés partielles, diérentielle. Fonctions composées. Fonctions de classe C 1. Exemples

Cours d Analyse. Fonctions de plusieurs variables

I - PUISSANCE D UN POINT PAR RAPPORT A UN CERCLE CERCLES ORTHOGONAUX POLES ET POLAIRES

Représentation des Nombres

STATIQUE GRAPHIQUE ET STATIQUE ANALYTIQUE

NOTATIONS PRÉLIMINAIRES

Exercices - Nombres complexes : corrigé. Formes algébriques et trigonométriques, module et argument

I. Polynômes de Tchebychev

LA PHYSIQUE DES MATERIAUX. Chapitre 1 LES RESEAUX DIRECT ET RECIPROQUE

Représentation géométrique d un nombre complexe

Correction de l examen de la première session

Fonctions de deux variables. Mai 2011

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Chafa Azzedine - Faculté de Physique U.S.T.H.B 1

Programmation linéaire et Optimisation. Didier Smets

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Angles orientés et trigonométrie

de calibration Master 2: Calibration de modèles: présentation et simulation d

Chapitre 7. Statistique des échantillons gaussiens. 7.1 Projection de vecteurs gaussiens

TOUT CE QU IL FAUT SAVOIR POUR LE BREVET

Cours de Mécanique du point matériel

Cercle trigonométrique et mesures d angles

Introduction à l étude des Corps Finis

L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Intégrales doubles et triples - M

Optimisation, traitement d image et éclipse de Soleil

INTRODUCTION À L ANALYSE FACTORIELLE DES CORRESPONDANCES

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Partie 1 - Séquence 3 Original d une fonction

Corrigé du baccalauréat S Pondichéry 12 avril 2007

Programmes des classes préparatoires aux Grandes Ecoles

LE PRODUIT SCALAIRE ( En première S )

Calcul différentiel. Chapitre Différentiabilité

Paris et New-York sont-ils les sommets d'un carré?

Cours IV Mise en orbite

Université Paris-Dauphine DUMI2E 1ère année, Applications

Image d un intervalle par une fonction continue

Cours de mathématiques

Programme de la classe de première année MPSI

8.1 Généralités sur les fonctions de plusieurs variables réelles. f : R 2 R (x, y) 1 x 2 y 2

Chapitre 2 Le problème de l unicité des solutions

Continuité et dérivabilité d une fonction

Résolution d équations non linéaires

Correction du Baccalauréat S Amérique du Nord mai 2007

LES TYPES DE DONNÉES DU LANGAGE PASCAL

PEUT-ON «VOIR» DANS L ESPACE À N DIMENSIONS?

AC AB. A B C x 1. x + 1. d où. Avec un calcul vu au lycée, on démontre que cette solution admet deux solutions dont une seule nous intéresse : x =

Géométrie dans l espace Produit scalaire et équations

Limites finies en un point

Continuité d une fonction de plusieurs variables

Notion de fonction. Résolution graphique. Fonction affine.

Algorithmes pour la planification de mouvements en robotique non-holonome

SINE QUA NON. Découverte et Prise en main du logiciel Utilisation de bases

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

Exercices Alternatifs. Une fonction continue mais dérivable nulle part

EXERCICES DE REVISIONS MATHEMATIQUES CM2

Formes quadratiques. 1 Formes quadratiques et formes polaires associées. Imen BHOURI. 1.1 Définitions

Le produit semi-direct

COMPTE-RENDU «MATHS EN JEANS» LYCEE OZENNE Groupe 1 : Comment faire une carte juste de la Terre?

5.2 Théorème/Transformée de Fourier a) Théorème

Oscillations libres des systèmes à deux degrés de liberté

Construction d un cercle tangent à deux cercles donnés.

3. Conditionnement P (B)


Michel Henry Nicolas Delorme

Chapitre 3 : Repères et positionnement 3D

Nom : Groupe : Date : 1. Quels sont les deux types de dessins les plus utilisés en technologie?

Exprimer ce coefficient de proportionnalité sous forme de pourcentage : 3,5 %

Calcul différentiel sur R n Première partie

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Les algorithmes de base du graphisme

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Mais où est donc passée la relativité générale? Version 3.0

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Repérage d un point - Vitesse et

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

NOTICE DOUBLE DIPLÔME

Transcription:

Boîte à outils mathématiques de base pour l infographie et l animation par ordinateur Yves Chiricota, professeur DIM, UQAC Cours 8TRD147 14 Janvier 2015

2 Il est impossible d envisager l étude des méthodes de l animation par ordinateur sans des connaissance en algèbre linéaire et en calcul. Les approches plus poussées de l animation par ordinateur (comme la simulation de surfaces déformables et de certains phénomènes physiques) demandent même la maîtrise de la géométrie différentielle. Nous verrons ici la base mathématique nécessaire au cours. Ce document constitue en quelque sorte une boîte à outils mathématiques pour l animation par ordinateur. 1 Algèbre matricielle En gros, on pourrait dire que l algèbre matricielle est l étude de l arithmétique des matrices. On muni l ensemble des matrices d une opération de somme et d une opération de produit. Cependant, dans le cas des matrices, les choses ne sont pas aussi simple que si on travaille avec les nombres réels. Il faut tenir compte du format des matrices, elles ne sont pas toutes inversible, etc. Grâce à l algèbre matricielle, il est possible de représenter des concepts beaucoup plus riches que ceux inhérents à partir de l algèbre des nombres réels uniquement. En effet, grâce aux vecteurs et aux matrice, on peut représenter sur ordinateur des objects en plusieurs dimensions. Ces concepts nous servent aussi à représenter certaines transformation de l espace, en particulier celles nécessaires à simuler des caméras virtuelles. Il serait trop long d énumérer ici toutes les applications de l algèbre linéaire en infographie. Nous allons voir les éléments essentiels pour le cours 8TRD147. Les thèmes abordés ici constituent le minimum nécessaire à entreprendre l étude de l infographie et l animation par ordinateur. 1.1 Points et vecteurs Intuitivement, on peut définir le plan euclidien comme étant un ensemble de points pour lesquels on peut mesurer les distances et les angles. Notons qu un point sert à indiquer une position. L espace euclidien de dimension trois se définit aussi comme un ensemble de points pour lesquels on peut mesurer des angles et des distances. A priori, dans un espace euclidien, aucun point ne se distingue des autres (il n y a pas d origine) et il n y a pas de système de coordonnées. La notion d espace euclidien est très générale. En particulier, l espace R n des points exprimés à l aide de trois

1. ALGÈBRE MATRICIELLE 3 nombres réels forme un espace euclidien. Un espace vectoriel est un ensemble de vecteurs muni d opérations de somme et de produit par un scalaire qui satisfont un certain nombre de propriétés. Les vecteurs servent à indiquer des directions d un point à un autre. Plus formellement, un espace vectoriel réel (V, +, ) est la donnée d un ensemble de vecteurs V muni de deux opérations + : V V V et satisfaisant les propriétés suivantes: : R V V 1. Pour tous u, v V, on a u + v = v + u, 2. Pour tous u, v, w V on a u + (v + w) = (u + v) + w, 3. Il existe un élément spécial 0 V tel que pour tout u V, on a u + 0 = u, 4. Pour tout u V, il existe un élément v V tel que u + v = 0 (en d autres mot, chaque élément possède un opposé), 5. Pour tout u V, on a 1 u = u, 6. Pour tous α, β R, pour tout u V, on a α(β u) = (αβ) u 7. Pour tous α, β R, pour tout u V, on a (α + β) u = α u + β u 8. Pour tout α R, pour tous u, v V, on a α (u + v) = α u + α v Ces huit propriétés constituent les règles de calcul (permettant de simplifier des expression, etc.) dans un espace vectoriel. Tout calcul valide sur les vecteurs doit pouvoir s exprimer comme une suite d opération correspondant à ces règles. Exercice: Déterminer l interprétation géométrique des deux opérations. Un sous-espace vectoriel de V est un sous-ensemble de vecteur U tel que si u, v U et α R, alors u + v U et αv U.

4 L espace R 3 muni de la somme et du produit par un scalaire usuels forme un espace vectoriel. On peut voir R n de deux points de vue: comme un espace euclidien ou comme un espace vectoriel. Une des particularité qui distingue un espace euclidien d un espace vectoriel est la présence d un point qui représente l origine de l espace vectoriel. Dans le cas de de R n, n importe quel point pourrait servir d origine, mais on utilise habituellement le point (0, 0,..., 0). Étant donné un espace euclidien, on peut en faire un espace vectoriel en choisissant un point, disons O, qui servira d origine. Par la suite, on fait correspondre à chaque point P de l espace euclidien un vecteur V (P ) de l espace vectoriel en lui associant le segment de droite OP. Exercice: définir la somme et le produit par un scalaire de telle sorte que cette construction donne un espace vectoriel. En toute généralité, les vecteurs d un espace vectoriel réel peuvent être n importe quel type d objets, pourvu que les conditions précédentes soient respectées. On peut définir des espaces vectoriels de fonctions, de quaternions, etc. Il est utile de représenter les vecteurs à l aide de coordonnées. L idée est de choisir un ensemble B = {b 1, b 2,... b n } de n vecteurs linéairement indépendants et de les utiliser pour exprimer n importe quel vecteur v de l espace en calculant l unique décomposition v = a 1 b 1 + a 2 b 2 + + a n b n, où a n R. Les nombres a i sont appelés coordonnées du vecteur v relativement à la base B. Il est intéressant de remarquer que (a 1, a 2,..., a n ) est un vecteur de R n. Il faut faire attention ne pas confondre coordonnées et vecteur dans le cas de R n. Pour la suite, nous ne considérerons que l espace vectoriel R n muni de la somme de vecteur usuelle et du produit par un scalaire usuel: u + v = (u 1, u 2,..., u n ) + (v 1, v 2,... v n ) = (u 1 + v 1, u 2 + v 2,..., u n + v n ) et α u = α (u 1, u 2,..., u n ) = (αu 1, αu 2,..., αu n ). Exercice: Vérifier que les huit propriétés sont satisfaites dans ce cas.

1. ALGÈBRE MATRICIELLE 5 1.2 Systèmes de coordonnées Comme nous l avons vu, on peut représenter les vecteurs à l aide de systèmes de coordonnées. L idée est de choisir une base ordonnée {b 1, b 2,... b n } pour exprimer les éléments de R n comme une combinaison linéaire i a ib i, avec a n R. En fait, lorsqu on considère un vecteur (u 1, u 2,... u n ), c est (de manière implicite) relativement à la base canonique de R n : (u 1, u 2,... u n ) = i u ie i, où e i est le vecteur comportant des 0 à chaque position sauf à la i ième où on retrouve un 1 (e 1 = (1, 0, 0, 0,... 0), e 2 = (0, 1, 0, 0,... 0),.... Le concepts de systèmes de coordonnées permet de simplifier les calculs inhérents aux caméras virtuelles et de faciliter la représentation des objets géométrique en infographie, entre autres choses. On passe d un système de coordonnées à un autre à l aide de la multiplication matricielle (exercice). 1.3 Transformation de l espace Euclidien On peut appliquer certaines opérations aux vecteurs et aux points. Les principales opérations sont la rotation autour d un axe, la translation selon un vecteur et le changement d échelle. On utilise généralement les matrices pour représenter ces transformations, lorsqu elles sont linéaires. L utilisation des matrices présentes de grands avantages car elle permettent une implémentation facile et que si T est une transformation, représentée par la matrice M T, appliquée à un vecteur V, on obtient T (V ) en multipliant avec M et V, c-à-d T (V ) = MV. De plus, la composition de transformation se traduit par le produit des matrices correspondantes. Cela présente un avantage relativement à la performance du calcul lorsque l on doit appliquer la même série de transformations à plusieurs vecteur comme c est souvent le cas en infographie. Par exemple, la matrice suivant effectue une rotation autour de l origine d angle θ autour du vecteur (0, 0, 1): cos θ sin θ 0 sin θ cos θ 0 0 0 1

6 La matrice suivant effectue représente une dilatation d un vecteur (avec une valeur spécifique pour chaque axe): s x 0 0 0 s y 0 0 0 s z Coordonnées homogènes Pour être en mesure de représenter une translation d un vecteur de dimension trois à l aide d une matrice, on est forcé de travailler en dimension quatre. On représente alors les vecteurs de R 3 à partir de vecteurs de R 4 à l aide de coordonnées homogènes. La représentation en coordonnées homogènes d un point (x, y, z) est (wx, wy, wz, w), où w 0. Le point (X, Y, Z, W ), avec W 0, correspond au point (X/W, Y/W, Z/W ) dans R 3. En fait, on a la correspondance: (x, y, z) (wx, wy, wz, w) = w(x, y, z, 1), avec w R. On remarquera que plusieurs points en coordonnées homogènes correspondent à (x, y, z). En fait, point de l espace R 3 se trouve associé à une droite de l espace R 4. On choisit habituellement le représentant (1 x, 1 y, 1 z, 1) = (x, y, z, 1) pour représenter (x, y, z). La matrice 1 0 0 t x 0 1 0 t y 0 0 1 t z 0 0 0 1 représente une translation de (t x, t y, t z ) d un vecteur (x, y, z) exprimé en coordonnées homogènes. Un des grand avantage de la notation matricielle pour représenter les opérations est que la composition des opérations se calcule à l aide du produit de matrice. Ce calcul est souvent intégré dans les cartes graphiques ce qui permet d obtenir de

1. ALGÈBRE MATRICIELLE 7 bonnes performances. Il est de plus intéressant de noter que l inverse d une opération s obtient tout simplement en prenant l inverse matriciel. Par exemple, considérons un cube dont les coins opposés sont (2, 3, 4) et (3, 4, 5) et supposons que nous désirions effectuer une rotation d angle θ par rapport à l axe des z des six coins du cube. Il suffira d appliquer une translation par le vecteur ( 2, 3, 4) au coins du cube, ensuite la rotation, et ensuite la translation (2, 3, 4). Cette suite d opération correspond au produit des matrices: T 1 RT, où T = 1 0 0 2 0 1 0 3 0 0 1 4 0 0 0 1 et R = cos θ sin θ 0 0 sin θ cos θ 0 0 0 0 1 0 0 0 0 1. 1.4 Vecteurs Produit scalaire Le produit scalaire de deux vecteurs est défini par: u, v = u 1 v 1 + u 2 v 2 + + u n v n, où u = (u 1, u 2,..., u n ) et v = (v 1, v 2,..., v n )). La longueur u d un vecteur u s obtient avec la formule: u = u, u. On remarquera que si u et v sont perpendiculaire, on a u, v = 0. u, v = v, u. Soit α R, on a αu, v = α u, v = u, αv.

8 On normalise un vecteur u avec u u. Rappelons la formule u, v = cos θ, u v où θ est l angle entre les vecteurs u et v. Cette formule découle de la loi des cosinus: Si la longueur des cotés d un triangle sont a, b et c et θ est l angle entre les cotés correspondant aux longueurs a et b, alors on a c 2 = a 2 + b 2 2ab cos θ. On a u, v < 0 si θ > π 2, u, v = 0 si θ = π 2, u, v > 0 si θ < π 2. Produit vectoriel Le produit vectoriel de deux vecteur de R 3 est défini par la formule suivante: i j k u v = det u 1 u 2 u 3 v 1 v 2 v 3 La valeur de ce déterminant est égal à l aire du parallélogramme défini par les deux vecteurs. On a les propriétés suivantes: u v = v u. u v, u = u v, v = 0. Le produit vectoriel est intrinsèquement lié à la notion l orientation dans R 3. Selon que l on travaille dans un système main droite ou main gauche, on obtient l orientation du vecteur u v formant un repère orthogonal avec la main et en imaginant que l index correspond à u et le majeur à v. L orientation du vecteur u v est alors donné par le pouce.

1. ALGÈBRE MATRICIELLE 9 Réflexion Le calcul de réflexions est fondamental en infographie et en animation. Les applications sont nombreuses: détection de collision, illumination, etc. Tout d abord, calculons la projection d un vecteur sur un autre. Considérons deux vecteurs U et W. La projection de u sur w est un vecteur v = αw tel que u v, w = 0. Il s en suit u v, w = u, w v, w = u, w αw, w = u, w α w, w, d où α = u,w La projection de u sur w est donc le vecteur w 2 u, w w 2 w. La réflexion de u par rapport à w est l unique vecteur u de même longueur que u, inscrit dans le plan définit par u et w, qui fait le même angle que u avec w et différent de u. w u, v u En s aidant de la figure, on voit que u + 2(u v) = u, d où u = 2v u = 2 u, w w 2 w u.

10 2 Courbes et surfaces paramétrées L utilisation de courbes et surfaces est fondamentale en animation par ordinateur. Les courbes servent à décrire des trajectoires, des paramètres qui varient en fonction du temps, etc. Quant aux surfaces, elle permettent de modéliser les objets qui se retrouvent dans les scènes. On peut utiliser celles-ci pour représenter des objets rigides tel que des habitations, des véhicules, etc. Elle servent aussi à modéliser des objets déformables comme les vêtements, les vagues, etc. 2.1 Courbes Pour nous, une courbe paramétrée est une fonction continue β : I R n, avec I = [a, b] un intervalle fermé. Il est parfois pratique d utiliser un l intervalle normalisé [0, 1]. Par exemple, β(t) = (cos(t), sin(t), t), avec t [0, 6π] représente une courbe (à quoi correspond-elle?). Une courbe paramétrée peur servir à représenter la position d un objet en fonction du temps. Elle peuvent aussi servir à représenter des mouvement de caméra. On utiliser alors une courbe avec n = 6, car une caméra possède généralement six degrés de liberté (quel sont-ils?). Si on interprète une courbe β(t) comme la position d un objet en fonction du temps, la dérivée β (t) donne la vitesse instantanée au temps t. La distance parcourue entre les temps t 0 et t 1 s obtient en calculant l intégrale suivante: t1 t 0 β (t) dt. La longueur totale de la courbe est b a β (t) dt. Une courbe paramétrée par longueur est telle que u a β (t) dt = t. En d autres termes, la longueur au point u est égale à u (le paramètre est égal à la longueur de la courbe).

2. COURBES ET SURFACES PARAMÉTRÉES 11 2.2 Surfaces Pour nous, une surface paramétrée est une fonction continue σ : I 1 I 2 R n, où I 1 = [a, b] et I 2 = [c, d] sont des intervalles fermés et connexes. On utilise parfois I 1 = I 2 = [0, 1]. Voici un exemple de surface paramétrée: σ(u, v) = (sin (u) cos (v), cos (u) cos (v), sin (v)), avec u [0, 2π], et v [0, π]. Étant donné une surface σ = σ(u, v), il est parfois nécessaire de calculer le plan tangent au point σ(u 0, v 0 ) (par exemple pour calculer comment un objet projeté sur le surface rebondit). On l obtient à partir des dérivées partielles évaluées en (u 0, v 0 ). Le plan est définit par le point σ(u 0, v 0 ) et les vecteurs σ u (u 0, v 0 ) et σ v (u 0, v 0 ). On utilise aussi les notations σ u = σ u et σ v = σ v. L utilisation du vecteur normal N(u 0, v 0 ) en un point (u 0, v 0 ) de la surface est fondamental pour le calcul de l éclairage et certaines techniques de rendu de scènes (tel le bump mapping). Ce vecteur est tout simplement obtenu par la formule N(u 0, v 0 ) = σ u (u 0, v 0 ) σ v (u 0, v 0 ). N σu σ(u 0, v 0 ) σv σ Il est clair que ce vecteur est perpendiculaire au plan tangent à la surface σ au point σ(u 0, v 0 ).

12 3 Courbes et surfaces polygonales Les courbes et surfaces telles que nous venons de les voir sont des objets mathématiques appartenant au domaine continu. Leur codage sous la forme de structures de données s impose pour être en musure de faire dessiner ces objets par un moteur graphique. Le principe général pour ce codage est d échantillonner le domaine de définition de la courbe ou de la surface et de créer de segments ou des triangles à partir de cete échantillonnage. Pour une courbe, β : [a, b] R n, on définit les segments [β((a + i (b a) (b a) ), β((a + (i + 1) ], n n avec i = 0, 1,..., n 1. Le nombre se segment sera n 1. Pour une surface σ : [a, b] [c, d] R n, on calcule une grille formée des points P (i, j) suivant σ(a + i b a n, c + j d c m ), où i = 0, 1,..., n et j = 0, 1,..., m. La grille contiendra (n + 1)(m + 1) points. Cette grille est ensuite utilisée pour définir les triangles qui serviront à approximer la surface. Cette opération s appelle discrétiser la surface. 4 Géométrie dans R 3. Le calcul géométrique revêt une importance particulière en infographie et en animation par ordinateur. Les applications sont nombreuses: algorithmes de lancé de rayon, détection de collision dans la simulation, etc.

4. GÉOMÉTRIE DANS R3. 13 4.1 Coplanarité Considérons deux vecteurs non co-linéaires U, V R 3. Un vecteur W est co-planaire à U et V s il existe des valeurs α, β R 3 telles que W = αu + βv. On peut donc déterminer la co-planarité en résolvant le système d équations linéaires W = αu +βv. On ontient alors les coordonnées de W relativement aux vecteur U et V. Une autre approche pour déterminer si W est co-planaire avec U et V est de calculer le déterminant det(w, U, V ). Il est parfois utile de déterminer si quatre points A, B, C, D dans R 3 sont coplanaire ou non. On peut le déterminer comme suit en posant U = B A, V = C A et W = D A et en appliquant la méthode précédente. 4.2 Projection d un point dans un plan Considérons le plan Π (passant par l origine) défini les vecteurs (non colinéaires) U et V. La projection Q d un point W dans le plan Π s obtient en résolvant les équations suivantes: W Q, U = 0, W Q, V = 0, W Q, U V = 0. 4.3 Intersection de deux droites planaires La forme paramétrique de la droite qui passe par les points X et Y dans R 3 est X + t(y X). On remarquera que c est un cas particulier de courbe. Considérons les deux droites d 0 (t) = P 0 + t(p 1 P 0 ) et d 1 (t) = Q 0 + t(q 1 Q 0 )

14 avec P 0 = (x 0, y 0 ), P 1 = (x 1, y 1 ), Q 0 = (u 0, v 0 ), Q 1 = (u 1, v 1 ). On trouve l intersection en posant d 0 (a) = d 1 (b) et en résolvant pour a et b le système de deux équations deux inconnues. 4.4 Test pour déterminer si un point est à l intérieur d un triangle Soit P 0, P 1, P 2 les points définissant le triangle non dégénéré. Considérons un point W co-planaire avec le triangle (si le point n est pas inscrit dans le même plan, il n est pas à l intérieur). Exprimer le vecteur W P 0 comme combinaison linéaire des vecteurs P 1 P 0 et P 2 P 0, c.-à-d. W P 0 = α(p 1 P 0 ) + β(p 2 P 0 ). Si α + β 1, 0 α et 0 β, alors W est à l intérieur du triangle. 4.5 Intersection d une droite et d un plan passant par l origine dans R 3. Supposons la droite définie à partir de deux points P et Q. Soit U et V deux vecteurs générateurs du plan. L intersection W de la droite et du plan est de la forme W = Q + α(p Q). On trouve α en résolvant le système d équation suivant: U V, Q + α(p Q) = 0. 4.6 Intersection d une droite et d un triangle dans R 3. On calcule l intersection W de la droite et du plan. On détermine ensuite si W est à l intérieur du triangle.