Lo Furòl

... de l'ouverture (en occitan)

Vous êtes ici : Accueil / Logiciels Libres / QGIS / [QGIS3] Placer des photos sur une carte

QGIS

[QGIS3] Placer des photos sur une carte

QGIS logoProblème : J'ai voulu créer un trombinoscope à usage interne associant une école à une photo de directeur ou directrice afin de mieux nous reconnaître (65 écoles).
Attention :
Il ne s'agit pas de placer des photo ayant des données de localisation ajoutées lors de leur prise de vue (photo géoréférencées).
Il ne s'agit pas non plus de faire apparaître la photo en cliquant sur un point, méthode qui utilise la fonction "pièce jointe" (Attachment) dans les propriétés de la couche puis le formulaire d'attribut.

Il existe plusieurs façons de faire apparaître des photos dans QGIS, plus ou moins automatique, chacune présentant des avantages et des inconvénients. J'en ai trouvé deux que je vous détaille ci-dessous.

I- Avant de se lancer dans QGIS

Au préalable, concernant les photos, vous devrez :

  • les avoir toutes récupérées,
  • les recadrer (les photos évidemment), éventuellement nettoyées ou arrangées, en les mettant à la même taille. Tout cela peut se faire avec Gimp.
  • Les nommer : je vous conseille d'indiquer le nom de l'école sans ambiguïté et le nom de la personne. Dans mon cas, le plus simple serait de leur donner le N° d'UAI de l'école qui est sans ambiguïté.
  • Les ranger dans un même dossier.

Remarque : Cette partie en amont est de loin la plus longue !

II- À faire au préalable dans QGIS

Remarque : dans cet article, je ne traiterai pas de la conception de la carte en elle-même ; pour cela je vous renvoie à mes autres articles sur QGIS.

La carte doit être prête, avec :

  • les points de vos écoles placés sur la carte,
  • les limites des communes aussi,
  • les points des écoles complétés par une feuille LibreOffice Calc contenant toutes les informations ayant trait à l'école,
  • sur cette carte, n'oubliez pas d'afficher le nom des communes pour pouvoir mieux se repérer.

III- Méthode 1 : en utilisant le gestionnaire de mise en page

C'est la méthode la moins compliquée car on ne travaille que sur la sortie de la carte pour un pdf à imprimer par exemple.
Pour info, en anglais, le gestionnaire de mise en page se dit "Layout manager" (ou Print Composer, utile pour trouver des infos sur Internet).
Documentation : https://docs.qgis.org/latest/fr/docs/user_manual/print_composer/index.html

  1. On ouvre le gestionnaire de mise en page puis on ouvre une mise en page pour afficher les informations à imprimer.
  2. On va rajouter une image via son icône :
    QGIS Image 1
  3. On trace approximativement un cadre sur la carte avec la position et la taille voulue.
  4. En allant dans ses propriétés à droite on indique le type d'image (raster), le chemin du fichier ainsi que la taille voulue :
    QGIS Image 2
  5. Une fois cette première étape réalisée, il suffit de copier-coller cette image et de juste changer le chemin du fichier de la photo. On pourra la déplacer pour la positionner au meilleur endroit.
  6. On répétera ces étapes autant de fois que nécessaire.

Cette méthode est la plus abordable techniquement et permet de placer de façon fine, manuellement les photos où on le souhaite mais elle est assez coûteuse en temps avec des répétitions fastidieuses.
 

IV- Méthode 2 : en remplaçant le symbole du point de l'école par une image

Source : https://gis.stackexchange.com/questions/421467/not-geotagged-photos-in-qgis

A- Rajouter 2 champs de données concernant l'image :

Directement dans LibreOffice Calc (fermez le document QGIS avant), on rajoute dans la feuille de données des écoles 2 nouvelles colonnes : une indiquant l'emplacement du dossier des images, une avec le nom de fichier de l'image.
Remarque : inutile de rajouter un champ calculé pour concaténer le nom du dossier avec le nom de l'image pour obtenir le chemin complet car on peut avoir des erreurs notamment lorsqu'il n'y a pas de photo associée à une école.

B- Modifier le symbole correspondant au point de l'école :

Remarque : ce symbole se modifie différemment selon le type de point choisi mais le processus est toujours le même :

QGIS Image 3

- On va dans le style de couche, sur l'onglet "Symbologie".

- On va dans "Paramètre du moteur de rendu".

- On choisit comme "Type de symbole" -> "Symbole image raster".

- On clique sur l'icône à gauche "Valeur définie par des données" (ici symbole epsilon jaune ɛ) du cadre vide pour indiquer une expression permettant de calculer la valeur du symbole (qui doit être un chemin vers un fichier image).

- Une fenêtre "Constructeur de Chaîne d'Expression" permettant de construire une formule de calcul s'ouvre.

 

- On indique la formule suivante :QGIS Image 4

'file:///' || "Champ Dossier Images" ||'/' ||"Champ Nom fichier image"

Pour fabriquer cette formule, on peut récupérer les noms des champs dans la partie "Champs et Valeurs" en faisant défiler la liste des champs.

Quand la formule est bonne, on peut prévisualiser le résultat en mettant la souris dessus et une bulle sur fond jaune indique le résultat. Si ce n'est pas le cas on obtient un message d'erreur.

On obtient alors une carte avec les photos à la place des points des écoles.
Par contre, il faudra certainement choisir "Déplacement de points" pour leur représentation pour éviter des superpositions sur une même ville.

Cette méthode permet de placer rapidement un grand nombre de photo mais par contre, il n'est pas possible de les déplacer manuellement. Du coup, le résultat n'est pas forcément satisfaisant avec des superpositions, des espaces insuffisants.

QGIS Image 5

V- Conclusion

Pour ne pas surcharger le trombinoscope, il faudra l'accompagner de la liste des enseignant⋅e⋅s avec le nom de la commune, de l'école et leur nom et prénom.

On pourrait aussi envisager une numérotation, un index faisant le lien entre la carte et la liste...

Au vu des résultats, dans ce cas précis de réalisation d'un trombinoscope, la méthode 1 est la méthode à privilégier (on peut voir le résultat ci-contre).

Par contre la méthode 2 peut être intéressante pour réaliser une carte d'orientation en y plaçant des photos (mais dans ce cas des photos géoréférencées sont préférables si c'est possible).

Vous êtes ici : Accueil / Logiciels Libres / QGIS / [QGIS3] Placer des photos sur une carte