nsi:modules:points_sur_une_carte_europe
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| nsi:modules:points_sur_une_carte_europe [2025/03/05 15:42] – créée goupillwiki | nsi:modules:points_sur_une_carte_europe [2025/03/05 16:10] (Version actuelle) – goupillwiki | ||
|---|---|---|---|
| Ligne 13: | Ligne 13: | ||
| {" | {" | ||
| {" | {" | ||
| - | {" | + | {" |
| ] | ] | ||
| </ | </ | ||
| - | |||
| - | J'ai ajouté Berlin pour montrer l' | ||
| <WRAP group> | <WRAP group> | ||
| <WRAP half column> | <WRAP half column> | ||
| - | |||
| - | ===== Ce qu'on ne veut pas faire ===== | ||
| - | |||
| - | Il existe des modules permettant de télécharger les cartes voulues et d' | ||
| ===== Afficher la carte ===== | ===== Afficher la carte ===== | ||
| - | Télécharger le fichier : {{ : | + | Télécharger le fichier : {{ : |
| <code python> | <code python> | ||
| import matplotlib.pyplot as plt | import matplotlib.pyplot as plt | ||
| import matplotlib.image as mpimg | import matplotlib.image as mpimg | ||
| - | img = mpimg.imread(' | + | img = mpimg.imread(' |
| plt.imshow(img) | plt.imshow(img) | ||
| plt.show() | plt.show() | ||
| Ligne 40: | Ligne 34: | ||
| <WRAP half column> | <WRAP half column> | ||
| - | {{ : | + | {{ : |
| </ | </ | ||
| </ | </ | ||
| Ligne 46: | Ligne 40: | ||
| ===== Coordonnées sur la carte ===== | ===== Coordonnées sur la carte ===== | ||
| - | La carte choisie a le format | + | La carte choisie a le format |
| {{ : | {{ : | ||
| - | Pour cela nous avons besoin de quelques repères. | + | La carte n'est pas en projection plate, il faut faire quelques calculs. Je vous donne la fonction. |
| - | + | ||
| - | Sur la carte nous identifions deux points : | + | |
| - | + | ||
| - | * le point en vert, que j' | + | |
| - | * le point en rouge, que j' | + | |
| - | + | ||
| - | ==== Longitude vers x ==== | + | |
| - | + | ||
| - | On une fonction | + | |
| - | + | ||
| - | <WRAP tip>La carte considérée est assez petite pour être considérée comme plate. Ce serait plus compliqué pour une carte de grande taille devant tenir compte de la courbure de la Terre.</ | + | |
| - | + | ||
| - | On a donc $x = a\cdot lng + b$. | + | |
| - | + | ||
| - | C'est un travail de mathématiques. | + | |
| - | + | ||
| - | <WRAP info> | + | |
| - | Voici le calcul pour ceux que cela intéresse : On pose $x = a\cdot lng + b$. Cela doit fonctionner pour les points A et B donc : | + | |
| - | + | ||
| - | $$\begin{cases}a\cdot lng_A + b = x_A\\a\cdot lng_B + b = x_B\end{cases} \Rightarrow a \cdot \left(lng_A - lng_B\right) = x_A - x_B \Rightarrow a = \frac{x_A - x_B}{lng_A - lng_B}$$ | + | |
| - | + | ||
| - | On remplace par exemple dans la première équation pour trouver $b$ | + | |
| - | + | ||
| - | $$\frac{x_A - x_B}{lng_A - lng_B} \cdot lng_A + b = x_A \Rightarrow b = x_A - \frac{x_A - x_B}{lng_A - lng_B} \cdot lng_A$$ | + | |
| - | </ | + | |
| - | On en déduit la fonction : | ||
| <code python> | <code python> | ||
| - | def lng_to_x(lng): | + | def latlng_to_xy(lat,lng): |
| xA = 770 | xA = 770 | ||
| xB = 179 | xB = 179 | ||
nsi/modules/points_sur_une_carte_europe.1741185765.txt.gz · Dernière modification : de goupillwiki
