Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
back2root:programmation:3d-theories-et-mathematiques-part-1 [2022/12/27 01:44] – frater | back2root:programmation:3d-theories-et-mathematiques-part-1 [2024/06/28 15:33] (Version actuelle) – frater | ||
---|---|---|---|
Ligne 21: | Ligne 21: | ||
pourtant, il est impératif d' | pourtant, il est impératif d' | ||
- | <WRAP round box 60%><m 14>eta radian = 180 degre</ | + | <WRAP round box>< |
Donc 1 radian vaut +/- 57.2958 degré d' | Donc 1 radian vaut +/- 57.2958 degré d' | ||
- | <WRAP round box 60%><m 14>1 radian = 180/eta degre</ | + | <WRAP round box>< |
Les formules de conversion sont donc les suivantes: | Les formules de conversion sont donc les suivantes: | ||
Ligne 31: | Ligne 31: | ||
== degré -> radian == | == degré -> radian == | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x radian = angle * (eta/ | <m 14>x radian = angle * (eta/ | ||
</ | </ | ||
Ligne 38: | Ligne 38: | ||
== radian -> degré == | == radian -> degré == | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x degre = rad * (180/ | <m 14>x degre = rad * (180/ | ||
</ | </ | ||
Ligne 75: | Ligne 75: | ||
=== Sphérique → Cartésien === | === Sphérique → Cartésien === | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 13>x = r * sin (theta) * cos (phi)</ | <m 13>x = r * sin (theta) * cos (phi)</ | ||
Ligne 86: | Ligne 86: | ||
=== Cylindrique → Cartésien === | === Cylindrique → Cartésien === | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 13>x = rho cos(phi)</ | <m 13>x = rho cos(phi)</ | ||
Ligne 102: | Ligne 102: | ||
Pour additionner 2 matrices, il s’agit de faire la somme de leurs membres: | Pour additionner 2 matrices, il s’agit de faire la somme de leurs membres: | ||
| | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 108: | Ligne 108: | ||
Pour la multiplication, | Pour la multiplication, | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{2}{2}{a1 b1 a2 b2}}{|} * | delim{|}{matrix{2}{2}{a1 b1 a2 b2}}{|} * | ||
Ligne 115: | Ligne 115: | ||
</ | </ | ||
- | <WRAP round info 60%> | + | <WRAP round info> |
**Note sur la multiplication par 1** | **Note sur la multiplication par 1** | ||
Dans un calcul simple, il est évident que, lorsque l'on multiplie n' | Dans un calcul simple, il est évident que, lorsque l'on multiplie n' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
</ | </ | ||
Ligne 129: | Ligne 129: | ||
En calcul matriciel , la valeur ' | En calcul matriciel , la valeur ' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 135: | Ligne 135: | ||
Pour des questions pratiques, je ne me pencherais que sur le système cartésien, plus lisible et surtout plus commun, mais sachez qu’il est tout a fait possible de convertir une carte de la galaxie (qui est trouvable en coordonnées sphérique) dans un système cartésien: | Pour des questions pratiques, je ne me pencherais que sur le système cartésien, plus lisible et surtout plus commun, mais sachez qu’il est tout a fait possible de convertir une carte de la galaxie (qui est trouvable en coordonnées sphérique) dans un système cartésien: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 141: | Ligne 141: | ||
et, ainsi la multiplication d'une matrice par ' | et, ainsi la multiplication d'une matrice par ' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{3}{1}{x y z}}{|} = | delim{|}{matrix{3}{1}{x y z}}{|} = | ||
Ligne 151: | Ligne 151: | ||
Comme tous les langages de programmations n' | Comme tous les langages de programmations n' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x*1) + (y*0) + (z*0)</ | <m 14>x prime = (x*1) + (y*0) + (z*0)</ | ||
Ligne 162: | Ligne 162: | ||
Ce qui dans ce cas précis peut s' | Ce qui dans ce cas précis peut s' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
Ligne 174: | Ligne 174: | ||
Toutefois, pour pouvoir correctement appliquer certaines transformations (notamment la translation), | Toutefois, pour pouvoir correctement appliquer certaines transformations (notamment la translation), | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 188: | Ligne 188: | ||
Ce qui peut se traduire simplement : | Ce qui peut se traduire simplement : | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x*1) + (y*0) + (z*0) + (w*0)</ | <m 14>x prime = (x*1) + (y*0) + (z*0) + (w*0)</ | ||
Ligne 200: | Ligne 200: | ||
Ou encore en mode " | Ou encore en mode " | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
Ligne 212: | Ligne 212: | ||
En résumé, un produit matriciel d'une matrice point " | En résumé, un produit matriciel d'une matrice point " | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{1}{ nx ny nz nw}}{|} = | delim{|}{matrix{4}{1}{ nx ny nz nw}}{|} = | ||
Ligne 227: | Ligne 227: | ||
Et se résous avec les équations suivantes: | Et se résous avec les équations suivantes: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x*xa) + (y*xb) + (z*zb) + (w*xd)</ | <m 14>x prime = (x*xa) + (y*xb) + (z*zb) + (w*xd)</ | ||
Ligne 253: | Ligne 253: | ||
Sans doute la matrice la plus simple, la matrice de transformation d' | Sans doute la matrice la plus simple, la matrice de transformation d' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 267: | Ligne 267: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x*ex) + (y* 0) + (z* 0) + (w* 0)</ | <m 14>x prime = (x*ex) + (y* 0) + (z* 0) + (w* 0)</ | ||
Ligne 280: | Ligne 280: | ||
Si il existe une transformation souvent sous estimée, c'est bien celle-ci, le déplacement d'un point dans l' | Si il existe une transformation souvent sous estimée, c'est bien celle-ci, le déplacement d'un point dans l' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 292: | Ligne 292: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w*tx)</ | <m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w*tx)</ | ||
Ligne 304: | Ligne 304: | ||
Rappelez vous que w = 1, et donc nos formules peuvent se traduire par: | Rappelez vous que w = 1, et donc nos formules peuvent se traduire par: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = x+tx</ | <m 14>x prime = x+tx</ | ||
Ligne 322: | Ligne 322: | ||
Effet miroir par rapport au plan x/y (chaque coordonnée ' | Effet miroir par rapport au plan x/y (chaque coordonnée ' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 334: | Ligne 334: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w* 0)</ | <m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w* 0)</ | ||
Ligne 346: | Ligne 346: | ||
Effet miroir par rapport au plan x/z (chaque coordonnée ' | Effet miroir par rapport au plan x/z (chaque coordonnée ' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 358: | Ligne 358: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w* 0)</ | <m 14>x prime = (x* 1) + (y* 0) + (z* 0) + (w* 0)</ | ||
Ligne 370: | Ligne 370: | ||
Effet miroir par rapport au plan y/z (chaque coordonnée ' | Effet miroir par rapport au plan y/z (chaque coordonnée ' | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 382: | Ligne 382: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x*-1) + (y* 0) + (z* 0) + (w* 0)</ | <m 14>x prime = (x*-1) + (y* 0) + (z* 0) + (w* 0)</ | ||
Ligne 398: | Ligne 398: | ||
======= Autour de l'axe Y, avec un angle de ay degré ======= | ======= Autour de l'axe Y, avec un angle de ay degré ======= | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{ | delim{|}{ | ||
Ligne 411: | Ligne 411: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* cos(ay)) + (y* 0) + (z* -sin(ay)) + (w* 0)</ | <m 14>x prime = (x* cos(ay)) + (y* 0) + (z* -sin(ay)) + (w* 0)</ | ||
Ligne 426: | Ligne 426: | ||
======= Autour de l'axe X, avec un angle de ax degré ======= | ======= Autour de l'axe X, avec un angle de ax degré ======= | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{ | delim{|}{ | ||
Ligne 437: | Ligne 437: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* 1) + (y * 0) + (z * 0) + (w* 0)</ | <m 14>x prime = (x* 1) + (y * 0) + (z * 0) + (w* 0)</ | ||
Ligne 452: | Ligne 452: | ||
======= Autour de l'axe Z, avec un angle de az ° ======= | ======= Autour de l'axe Z, avec un angle de az ° ======= | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 465: | Ligne 465: | ||
Voici les formules a appliquer si l'on désire transformer un point particulier: | Voici les formules a appliquer si l'on désire transformer un point particulier: | ||
- | <WRAP round box 60%> | + | <WRAP round box> |
<m 14>x prime = (x* | <m 14>x prime = (x* | ||