Se réchauffer en mathématiques et acquérir ses outils pour la cartographie

Répondre
Partager Rechercher
Bonjour,

Je prépare une application web personnelle qui m'intéresse, et dans celle-ci je fais beaucoup appel aux cartes.
Je participe également au projet open source du module géomatique (l'API) utilisé pour leur lecture et leur examen. Quand une évolution est nécessaire, je peux parfois la réaliser.

Mais je ressens très durement un grand manque d'assises mathématiques : depuis le Bac D, 25 années d'informatique de gestion ont été mon activité, et ma mémoire n'a plus que les reliefs de quelques connaissances passées.

Je cherche à savoir comment me réchauffer d'abord : je dois retrouver ce que je savais. Et comment acquérir les bases mathématiques qui m'aideront pour étudier et transformer ces cartes.

J'aimerais savoir quel programme de révision me préparer. Je devrai sans doute rechercher des bases au niveau de la classe de 4ème car c'est là que débute la géométrie, si je me rappelle bien.
Puis reprendre d'autres éléments que je dois rafraîchir dans les programmes des années suivantes. Et enfin avancer un peu plus loin, peut-être, dans certaines parties pour comprendre ou savoir utiliser de nouveaux outils mathématiques utiles.

Quel parcours de révisions et d'études me recommandez-vous ?
Il y a t-il des livres qui me seront utiles pour me réveiller ? D'autres pour cerner ces domaines ?

Le sujet m'attire beaucoup, je le fais pour mes loisirs. Je n'ai pas de contrainte professionnelle ou d'examen à passer : le temps que cela prendra n'a pas d'importance. Que peut-on rêver de meilleur pour faire les choses posément, tranquillement et dans le confort ? Ce n'est pas tous les jours qu'on peut s'offrir ce plaisir !
Je ne serais pas choqué si l'on me disait que je n'aurai pas de résultat tangible avant plusieurs mois, et rien de sérieux avant deux ans. L'important, c'est d'avancer pour progresser.
Car, par contre, je n'aime pas du tout rester où j'en suis.

Dernière modification par Caniveau Royal ; 10/11/2015 à 06h36.
Hello par ici,

j'ai peur de faire une déviation par rapport à ton souhait initial, mais bon wala.

Je penses que partir sur une base de mathématique niveau BAC est largement suffisant par rapport à un début de 4ieme. On va dire que le bac est la finalité d'un cumul de connaissance. Surement faire des Annabac pour se remémorer des "banalités" n'est pas inenvisageable. Il doit surement exister des sites avec plein de fiches, exercices pour se préparer petit à petit.

Ensuite, si tu veux pousser plus loin, ( ayant passé par la ), je peux te conseiller de faire les sujets de BTS de géomètre-topographe. 5 annoncés sont corrigés, mais c'est toujours ça. C'est d'un niveau bac+2.

Je n'ai pas de livre à te recommander malheureusement.

Sinon bonne chance pour ton application web, on a voulu tester pour notre projet M2 de géomatique d'en mettre une en place, mais notre manque flagrant de pratique informatique à fait qu'on va se tourner vers un site Wix ( bouhhh la honte ... ).

Georezo est un forum vraiment utile pour poser des questions liées à des sujets qui s'en rapprochent.

edit : mdr jme suis fais pull par un nécropostage d'un mois. 1.png
Oh non, pas de soucis pour le "nécropostage d'un mois" !
Je désespérais d'avoir des pistes.

C'est que tout m'est nébuleux. Aujourd'hui pour évoluer, je fais mes programmes en trichant, et en me servant de ce que les outils employés pour produire mes données ont su faire à ma place...

Un exemple : sur mon site web, quand un internaute choisi une ville de France :

https://forums.jeuxonline.info/attachment.php?attachmentid=258908&d=1450846853

- Grâce au fichier des communes de l'INSEE je vais chercher sa région.

- J'affiche le shapefile à polygones des communes de cette région là (pour l'outre-mer) ou des départements (pour la France métropolitaine), ainsi les contours de la France métropolitaine ou de la région d'outre-mer sont dessinés.
Mais je ne fais pas de calcul de projection spécial : je prend celle qui se trouve dans le fichier SHP et je la note quelque-part.

- Puis, je mets en exergue la commune (en jaune sur la grande carte, en vert sur la zone de détail). Je choisis ma commune dans le shapefile, je la dessine telle quelle en image SVG, toujours sans réellement réfléchir à la projection. Ça passe, puisque je suis dans un sous-ensemble de ma carte.

- À présent, je veux remplacer le contour en vert de la commune par une sorte de topologie produit dans un nouveau shapefile :
(ici, il y a une plage, là un parcours de promenade, etc.)
Je fais une copie de Google Earth, je géoréférence par QGIS en WGS84 (le seul que Google connaît, je crois), je fais mon nouveau shapefile et je le re-projette en Lambert-93 par QGIS.

- Et je vais à présent chercher à superposer deux sources : mon contour de commune et ce fichier de topologie, en disant par ailleurs que le contour de ma commune sera pour le SVG produit une zone de clipping.

Bref, tout ça, je le fais comment dire ? Par chance et intuition, mais derrière c'est tout vide. Il n'y a pas la compréhension. Du coup, je le fais, ça réussit... mais je suis mort de trouille.
Miniatures attachées
Cliquez sur l'image pour la voir en taille réelle

Nom : arles.png
Taille : 332x448
Poids : 138,9 Ko
ID : 258908  
Je ne vois pas trop pourquoi tu parles de chance et d'intuition. Tant que tu travailles avec des éléments géoréférencés que tu gardes en L93 (qui est la projection utilisée en France pour le territoire), je ne vois pas ce qui pourrait poser problème (encore que je n'ai pas tout à fait compris ce que tu prends exactement comme données sur Google Earth mais ça ne doit pas changer fondamentalement les choses).
Plutôt que Google, dans la mesure du possible selon ce que tu cherches, je t'invite à plutôt piocher dans OSM
a mon avis c'est plus des notions de géodésie sur les différents systèmes de projection et comment l'on passe de l'un a l'autre qu'il te faut.

Les softs feront toujours les transfo pour toi selon les différents paramètres de ta projection et l'éventuel datum de ta transformation , tu ne feras jamais les calculs par toi même.

https://www.epsg-registry.org/ pour une database de toutes les projections.

De ce que je lis ta procédure a l'air de fonctionner correctement. Je ne connais pas vraiment QGIS mais il semble offrir pas mal de possibilité pour un soft gratuit.
Pour le moment, je me sors d'affaire parce j'arrive à mettre tout ce que j'utilise dans la même projection : Quantum GIS (QGIS, qui effectivement fait un travail très correct pour un soft gratuit) réalisant ce qu'il faut pour moi.

Mais ça va très vite s'arrêter !
J'aimerais présenter à un internaute les événements festifs ou les activités qui auront lieu prochainement 5, 10 ou 20 km à la ronde d'une ville. C'est à dire, ceux de cette ville-là, mais aussi ceux des quelques villes alentours qui sont dans le périmètre.

1) Ce périmètre il va falloir que je le calcule bien. Je me dis : j'ai de la chance, il me semble que le Lambert 93 mais aussi les projections UTM 20 ou 22 utilisées pour l'outre-mer ont des systèmes de coordonnées exprimés en mètres, mais si c'avait été un autre système de projection exprimé en degrés de latitude et longitude, eh bien, je serai déjà défait : je ne saurais pas comment calculer une distance à partir de deux points exprimés en latitude, longitude.

2) Et ce cercle de n kilomètres, il part d'où ? Du centre de ma commune, ça me semble le plus légitime. Il faut que je trouve le centre de gravité d'un polygone à n côtés. Je ne sais pas si je saurai faire tout simplement ça.

C'est pour cela que je ne me sens pas costaud.

@Axxou : j'ai le problème inverse du votre. J'ai de bonnes connaissances en informatique, mais peu en mathématiques et en géographie.

Dernière modification par Caniveau Royal ; 25/12/2015 à 20h40.
Des cordonnées projetées, c est en mètre, ce sont des coordonnées planes. Les coordonnés géographiques (longitudes, latitudes) ne dépendent pas de la projection.
En France, on utilise deux systèmes de projection, le Lambert 93 et les projections coniques conformes 9 zones (cc42 a cc50).
Pour ce que tu veux faire, le Lambert 93 est tout indiqué, c est une projection qui est la même sur tout le territoire métropolitain.
Pour le centre de la commune, c est facile si tu as les coordonnés de ton polygone de trouver le centre géométrique.
Citation :
Publié par Caniveau Royal
J'aimerais présenter à un internaute les événements festifs ou les activités qui auront lieu prochainement 5, 10 ou 20 km à la ronde d'une ville. C'est à dire, ceux de cette ville-là, mais aussi ceux des quelques villes alentours qui sont dans le périmètre.
Il y a beaucoup d'applications qui font ce genre de chose, y compris des jeux géolocalisés. Toutefois, si j'étais utilisateur de ton appli, ce que tu proposes me serait utile, mais d'une utilité limitée. Parce que je n'ai pas d'ailes.

Je m'explique, tu parles d'une distance en ligne droite, à vol d'oiseau. Mais je peux préférer aller faire la fête à une distance double mais facile d'accès au lieu d'aller à un endroit proche mais galère à atteindre. Bon, ok, j'ai conscience que cette approche est plus compliquée, mais je pense que cela vaut le coup de la considérer.

Tu as déjà, en tant que développeur, un tas d'outils pour calculer la distance par route entre deux villes, par exemple.
Cherche api calcul distance dans Google.
Pour le centre de gravité, ou l'aire, d'un polygone, regarde du côté du Théorème de Green.

En substance, si tu définis ton polygone par les n sommets ordonnés dans le sens trigonométrique (anti-horaire) et en posant (le point numéro 0 est le dernier parce que ça boucle) tu as :

- l'aire qui est égale à une simple somme


- les coordonnés du centre de gravité idem, après division par l'aire :



Note que le terme apparaît dans les trois formules, on peut donc coder ça comme ça :

Code:
a = 0
xg = 0
yg = 0
for i in range(n):
    v = x[i-1]*y[i] - x[i]*y[i-1]
    a += v
    xg += v*(x[i-1]+x[i])
    yg += v*(y[i-1]+y[i])
a *= 0.5
xg *= 1/(6*a)
yg *= 1/(6*a)
À mon avis il faut surtout te remettre à jour en géométrie plane, vu les échelles auxquelles tu t'adresses tu peux projeter tes coordonnées GPS sur un plan.
Pour les distances en longitude et latitude, tu peux utiliser la distance orthodromique.
@Soir : "Si j'étais utilisateur de ton appli, ce que tu proposes me serait utile, mais d'une utilité limitée. Parce que je n'ai pas d'ailes."
Tu as raison, mais c'est aussi pour la raison que tu donnes que pour l'instant je ne peux pas faire autrement.
Trouver par les routes ce qui fera au maximum 10 km implique de connaître le réseau routier que je ne connais pas encore.
L'API de Google pourrait m'aider, mais elle pourrait aussi me contraindre et je suis parti sur un jeu d'API différent. Il y a des fonctionnalités que je perds en l'abandonnant et que je vais devoir ré-obtenir autrement mais aussi d'autres que je je gagne.
Enfin, afficher ce qui se passe dans "un rayon de..." reste acceptable et se trouve dans de nombreux sites (pas mal de job boards). À ce moment-là, je peux présenter les évènements de plusieurs communes proches.

@kermo : La solution sur un plateau, avec l'algorithme en plus !
J'apprécie beaucoup ! Merci !
Citation :
Publié par Caniveau Royal
1) Ce périmètre il va falloir que je le calcule bien. Je me dis : j'ai de la chance, il me semble que le Lambert 93 mais aussi les projections UTM 20 ou 22 utilisées pour l'outre-mer ont des systèmes de coordonnées exprimés en mètres, mais si c'avait été un autre système de projection exprimé en degrés de latitude et longitude, eh bien, je serai déjà défait : je ne saurais pas comment calculer une distance à partir de deux points exprimés en latitude, longitude.
Ce n'est pas de la chance : la projection utilisée (Lambert93) étant celle « officielle », forcément qu'elle permet des calculer directement en mètres. Et quand bien même tu serais en WGS84 (les lat long dont tu parles), ce qui n'est pas recommandé si tu projetes le territoire métropolitain, une simple recherche google te donnerait la formule pour avoir des mètres.

2) Et ce cercle de n kilomètres, il part d'où ? Du centre de ma commune, ça me semble le plus légitime. Il faut que je trouve le centre de gravité d'un polygone à n côtés. Je ne sais pas si je saurai faire tout simplement ça.[/quote]
En général, on utilise le centroïde des communes. QGIS peut te le calculer très facilement avec ta couche de communes, mais sinon, le GEOFLA de l'IGN, mis à disposition gratuitement, te donne les coordonnées du centroïde de chaque commune.

Citation :
@Axxou : j'ai le problème inverse du votre. J'ai de bonnes connaissances en informatique, mais peu en mathématiques et en géographie.
C'est plutôt en SIG et géomatique que tu manques de connaissance, les maths et la géographie en général ne vont pas te servir énormément, car aujourd'hui, les outils à disposition (comme QGIS, qui bien que libre et gratuit, joue dans la même cour que les grands, voire les surpasse sur certains points, mais également tous les outils en lien avec la carto sur le web) permettent largement de se passer des maths. Mais pas de la connaissance de ces outils ni bien souvent, de la programmation.

Tu peux connaître le réseau routier assez facilement, soit par un jeu IGN Route500 (en accès libre) qui te donne le réseau principal, soit par OSM qui te donne le réseau détaillé, mais parfois encore un peu incomplet dans les communes les moins denses pour le réseau le plus fin.
De façon générale, tu aurais intérêt je pense à farfouiller, pour un premier niveau de connaissance en matière de jeu de données disponible, ce qui est accessible sur le site open data officiel.
Citation :
Publié par kermo

- les coordonnés du centre de gravité idem, après division par l'aire :


Alors question stupide sans doute, mais le centre de gravité d'un polygone quelconque dont on connait les coordonnées des sommets, c'est pas bêtement la moyenne des coordonnées des sommets?
Citation :
Publié par Caniveau Royal
...
Je ne serais pas choqué si l'on me disait que je n'aurai pas de résultat tangible avant plusieurs mois, et rien de sérieux avant deux ans. L'important, c'est d'avancer pour progresser.
Car, par contre, je n'aime pas du tout rester où j'en suis.
Je ne peux pas du tout t'aider, mais je kiffe à fond du bonhomme cet état d'esprit !!!
Citation :
Publié par Ex-voto
Ahah l'exemple avec Arles qui est la commune de métropole avec la plus grande superficie.
Je me fais mystifier par les échelles depuis le début.
Les communes ne sont que des points ou des lignes très courtes, si seulement elles sont visibles sur la carte de France métropolitaine.
Et même l'agrandissement du contour d'une commune ne suffit souvent pas à montrer ce que je veux dedans. Parce que là encore, ce qui me semble grand (sur place !) est dans la réalité tout petit...

https://forums.jeuxonline.info/attachment.php?attachmentid=259126&d=1451383281
Sur la carte de la France métropolitaine, Douarnenez (Finistère) est un tout petit point vert a peine visible.
Et si, sur place, la plage des Sables-Blancs est très prisée et semble de bonne dimension,
à l'échelle de la commune elle est très petite et il faut une grande représentation de la commune pour quelle soit visible.

Ici, je superpose un shapefile fait main avec QGIS à celui du contour de la commune venu d'un shapefile de GEOFLA.
(les ronds rouges, en revanche, c'est un coup de Paint pour ce post-ci).

@Pitit Flo -TMP : "le GEOFLA de l'IGN, mis à disposition gratuitement, te donne les coordonnées du centroïde de chaque commune."
Je te remercie, cela m'évitera d'être confronté aux communes à plusieurs polygones, qui apparaissent occasionnellement (celles sont rattachées à une île ou une pointe distante, par exemple), et qui m'auraient posé problème.

https://forums.jeuxonline.info/attachment.php?attachmentid=259127&d=1451383365

Je vais regarder pour les routes aussi.

@Silgar : Merci !


Une question en passant parce que je suis intrigué.
J'ai Mayotte, la Guadeloupe, la Martinique, la Réunion, la Guyane... mais où est la Polynésie Française ?
Je ne l'ai trouvée nulle-part. Que ce soit dans les shapefiles de GEOFLA ou dans la liste des communes de l'INSEE, rien.
Papeete, par exemple, je ne peux pas l'afficher. Je ne l'ai pas !
Miniatures attachées
Cliquez sur l'image pour la voir en taille réelle

Nom : douarnenez.png
Taille : 309x648
Poids : 197,5 Ko
ID : 259126   Cliquez sur l'image pour la voir en taille réelle

Nom : morne_a_leau.png
Taille : 311x321
Poids : 92,1 Ko
ID : 259127  

Dernière modification par Caniveau Royal ; 29/12/2015 à 12h05.
Citation :
Publié par Assurancetourix
Alors question stupide sans doute, mais le centre de gravité d'un polygone quelconque dont on connait les coordonnées des sommets, c'est pas bêtement la moyenne des coordonnées des sommets?
D'après la formule que j'ai mise et que j'utilise régulièrement (en vision par ordinateur) non.
Ça doit marcher si les sommets sont répartis d'une certaine façon, genre sur un même cercle - je te laisse vérifier mais ça me fera une bonne question pour mon prochain examen

edit : j'ai pas pu m'empêcher d'y regarder de plus près, et en fait le barycentre que tu as indiqué n'a rien à voir avec le centre de gravité d'un polygone.
Ils sont au même endroit dans des cas particuliers comme les polygones réguliers.

Un truc tout bête, avec la formule indiquée plus haut on peut rajouter arbitrairement autant de points qu'on veut sur le périmètre du polygone et le résultat sera le même, ce qui n'est pas le cas de la moyenne - qui ne prend d'ailleurs pas en compte l'ordre des points, alors que des mêmes points peuvent former plusieurs polygones.

Dernière modification par kermo ; 29/12/2015 à 14h45.
Citation :
Publié par Caniveau Royal
Une question en passant parce que je suis intrigué.
J'ai Mayotte, la Guadeloupe, la Martinique, la Réunion, la Guyane... mais où est la Polynésie Française ?
Je ne l'ai trouvée nulle-part. Que ce soit dans les shapefiles de GEOFLA ou dans la liste des communes de l'INSEE, rien.
Papeete, par exemple, je ne peux pas l'afficher. Je ne l'ai pas !
Je suppose que c'est parce que la polynésie est un TOM (enfin COM) là où Mayotte, Guadeloupe, Martinique et Réunion sont des DOM, donc totalement identiques à un département métropolitain, là où des différences législatives et organisationnelles existent avec les COM. Tu ne dois donc pas non plus trouver d'info sur Saint Barthélemy ou Saint Pierre et*Miquelon, j'imagine, pour les mêmes raisons.

Pour ce qui est de ton problème de représentation, c'est un cas classique en carto. Je pense que déjà, le choix des couleurs peut influencer la représentation. D'autre part, selon que tu souhaites une surface exacte ou juste une localisation approximative, tu peux choisir un point gros et coloré pour rendre plus visuelle la zone mise en avant, par exemple.
Un code iconographique peut aussi être ajouté, par exemple un parasol si tu représentes une plage.
Citation :
Publié par kermo
D'après la formule que j'ai mise et que j'utilise régulièrement (en vision par ordinateur) non.
Ça doit marcher si les sommets sont répartis d'une certaine façon, genre sur un même cercle - je te laisse vérifier mais ça me fera une bonne question pour mon prochain examen

edit : j'ai pas pu m'empêcher d'y regarder de plus près, et en fait le barycentre que tu as indiqué n'a rien à voir avec le centre de gravité d'un polygone.
Ils sont au même endroit dans des cas particuliers comme les polygones réguliers.

Un truc tout bête, avec la formule indiquée plus haut on peut rajouter arbitrairement autant de points qu'on veut sur le périmètre du polygone et le résultat sera le même, ce qui n'est pas le cas de la moyenne - qui ne prend d'ailleurs pas en compte l'ordre des points, alors que des mêmes points peuvent former plusieurs polygones.
Ha ben oui tout à fait j'ai fait l'amalgame barycentre-centre de gravité/masse. Bon par contre on peut se demander si l'OP a besoin de calculer un barycentre ou un "vrai" centre de masse, il est pas en train de faire de la mécanique là .
Question en rapport avec de la cartographie pour les utilisateurs de QGIS.
J'ai une carte de ma région avec toutes mes communes. Je défini une couleur et je je joue sur l'intensité (transparisation un truc comme sa ). Le soucis c'est que la couleur devient plus légère mais les contours aussi (contour trait noir). J'ai regardé dans les options mais impossible de trouver un truc pour laisser les contours fixe. Vous auriez une idée ?
Version 2.12 :

On parle de transparence ou d’opacité pour le % de visibilité d'une couche.

Donc une fois que tu as les couches actives ,

tu va modifier la couleur en cliquant sur Remplissage :

p110.png

Ca t'ouvre une fenêtre :

p210.png

Tu modifies l'Opacité à ta guise. Ainsi, tu peux modifier la transparence du fond de la couche sans toucher au contour.

Pour simplifier la manip, utilises Adobe Illustrator, c'est top pour la sortie de carte.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés