Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
back2root:programmation:3d-theories-et-mathematiques-part-1 [2021/08/05 10:51] – [Autour de l'axe Z, avec un angle de az °] 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>< |
Donc 1 radian vaut +/- 57.2958 degré d' | Donc 1 radian vaut +/- 57.2958 degré d' | ||
- | < | + | <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> |
<m 14>x radian = angle * (eta/ | <m 14>x radian = angle * (eta/ | ||
</ | </ | ||
Ligne 38: | Ligne 38: | ||
== radian -> degré == | == radian -> degré == | ||
- | < | + | <WRAP round box> |
<m 14>x degre = rad * (180/ | <m 14>x degre = rad * (180/ | ||
</ | </ | ||
Ligne 50: | Ligne 50: | ||
Sans doute le plus simple a comprendre car le plus proche de notre mode « mathématique ». | Sans doute le plus simple a comprendre car le plus proche de notre mode « mathématique ». | ||
+ | |||
+ | {{back2root: | ||
Une coordonnée est exprimée « simplement » avec avec trois coordonnées : x, y, z | Une coordonnée est exprimée « simplement » avec avec trois coordonnées : x, y, z | ||
Ligne 56: | Ligne 58: | ||
C’est le système qui est utilisé pour la géolocalisation ou la définition d’objets céleste ; on parle de coordonnées angulaire (appelées latitude et longitude dans la géolocalisation) et d’un rayon (l’altitude pour ce qui est de la géolocalisation, | C’est le système qui est utilisé pour la géolocalisation ou la définition d’objets céleste ; on parle de coordonnées angulaire (appelées latitude et longitude dans la géolocalisation) et d’un rayon (l’altitude pour ce qui est de la géolocalisation, | ||
+ | |||
+ | {{back2root: | ||
Une coordonnée est exprimée avec un rayon r et deux angles : r, <m 13> | Une coordonnée est exprimée avec un rayon r et deux angles : r, <m 13> | ||
Ligne 62: | Ligne 66: | ||
Ce système est le moins rependu, et souvent utilisé pour pour l’étude de mouvements hélicoïdaux ou en rotation autour d’un axe. | Ce système est le moins rependu, et souvent utilisé pour pour l’étude de mouvements hélicoïdaux ou en rotation autour d’un axe. | ||
+ | |||
+ | {{back2root: | ||
Une coordonnée est exprimée via deux angles : <m 13> | Une coordonnée est exprimée via deux angles : <m 13> | ||
Ligne 69: | Ligne 75: | ||
=== Sphérique → Cartésien === | === Sphérique → Cartésien === | ||
- | < | + | <WRAP round box> |
<m 13>x = r * sin (theta) * cos (phi)</ | <m 13>x = r * sin (theta) * cos (phi)</ | ||
Ligne 80: | Ligne 86: | ||
=== Cylindrique → Cartésien === | === Cylindrique → Cartésien === | ||
- | < | + | <WRAP round box> |
<m 13>x = rho cos(phi)</ | <m 13>x = rho cos(phi)</ | ||
Ligne 96: | 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> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 102: | Ligne 108: | ||
Pour la multiplication, | Pour la multiplication, | ||
- | < | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{2}{2}{a1 b1 a2 b2}}{|} * | delim{|}{matrix{2}{2}{a1 b1 a2 b2}}{|} * | ||
Ligne 109: | Ligne 115: | ||
</ | </ | ||
- | < | + | <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> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
</ | </ | ||
Ligne 123: | Ligne 129: | ||
En calcul matriciel , la valeur ' | En calcul matriciel , la valeur ' | ||
- | < | + | <WRAP round box> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 129: | 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> |
<m 14> | <m 14> | ||
</ | </ | ||
Ligne 135: | Ligne 141: | ||
et, ainsi la multiplication d'une matrice par ' | et, ainsi la multiplication d'une matrice par ' | ||
- | < | + | <WRAP round box> |
<m 14> | <m 14> | ||
delim{|}{matrix{3}{1}{x y z}}{|} = | delim{|}{matrix{3}{1}{x y z}}{|} = | ||
Ligne 145: | Ligne 151: | ||
Comme tous les langages de programmations n' | Comme tous les langages de programmations n' | ||
- | < | + | <WRAP round box> |
<m 14>x prime = (x*1) + (y*0) + (z*0)</ | <m 14>x prime = (x*1) + (y*0) + (z*0)</ | ||
Ligne 156: | Ligne 162: | ||
Ce qui dans ce cas précis peut s' | Ce qui dans ce cas précis peut s' | ||
- | < | + | <WRAP round box> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
Ligne 168: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 182: | Ligne 188: | ||
Ce qui peut se traduire simplement : | Ce qui peut se traduire simplement : | ||
- | < | + | <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 194: | Ligne 200: | ||
Ou encore en mode " | Ou encore en mode " | ||
- | < | + | <WRAP round box> |
<m 14>x prime = x * 1</m> | <m 14>x prime = x * 1</m> | ||
Ligne 206: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{1}{ nx ny nz nw}}{|} = | delim{|}{matrix{4}{1}{ nx ny nz nw}}{|} = | ||
Ligne 221: | Ligne 227: | ||
Et se résous avec les équations suivantes: | Et se résous avec les équations suivantes: | ||
- | < | + | <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 247: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 261: | 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> |
<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 274: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 286: | 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> |
<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 298: | 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> |
<m 14>x prime = x+tx</ | <m 14>x prime = x+tx</ | ||
Ligne 316: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 328: | 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> |
<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 340: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 352: | 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> |
<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 364: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 376: | 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> |
<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 392: | 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> |
<m 14> | <m 14> | ||
delim{|}{ | delim{|}{ | ||
Ligne 405: | 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> |
<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 420: | 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> |
<m 14> | <m 14> | ||
delim{|}{ | delim{|}{ | ||
Ligne 431: | 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> |
<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 446: | 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> |
<m 14> | <m 14> | ||
delim{|}{matrix{4}{4}{ | delim{|}{matrix{4}{4}{ | ||
Ligne 459: | 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> |
<m 14>x prime = (x* | <m 14>x prime = (x* | ||