#1 Wed 22 February 2023 09:54
- emmal
- Participant occasionnel
- Date d'inscription: 22 Feb 2023
- Messages: 11
QGIS: Utilisation de Pyqgis
Bonjour !
Je suis actuellement stagiaire dans une boite pour le risque industriel. En tâche on m'a demandé d'optimiser un procédé de Qgis:
Lors d'une cartographie de risque (admettons une explosion), il faut quantifier le nombre de personnes touchées, pour cela, sous Qgis, j'ai mis un fond de carte, tracé chaque zone de population en fonction de sa catégorie (école, habitation, entreprise, ..) et associé le nombre de personnes présentes dans chaque polygone. Ma tâche consiste à automatiser le tracé de la zone d'impact, celle-ci se présente sous la forme d'un cercle (de centre coordonnées GPS et rayon connus). Il faut donc que je calcule combien de personnes sont touchées en fonction du cercle tracé, si une entreprise est intégralement dans le cercle alors toutes les personnes présentes sont touchées, si c'est une petite partie je dois faire un ratio.
Est-il possible de faire cela avec PyQgis sachant que j'ai débuté il y a à peine 1 semaine sur PyQgis (ayant des connaissances de base sut qgis et python)
J'espère avoir été assez claire, désolée pour le pavé
Merci !
Hors ligne
#2 Wed 22 February 2023 10:22
- Vincent Vauchey
- Participant assidu
- Lieu: saint jean de braye
- Date d'inscription: 24 Jan 2006
- Messages: 288
Re: QGIS: Utilisation de Pyqgis
je pense que le plus simple et de faire une sélection par localisation pour après faire le compte des personne touché.
Après je trouve absurde de couper une entreprise ou une école et deux, si juste la moitié de l'école est dans le cercle, tu peux difficilement dire que juste pour les 10% du bâtiment il y a juste 10 enfants sur 100 d'impacté.
Après avec l'administration c'est souvent absurde
Pour le pourcentage de tes bâtiments, tu peux construire un Script (à l'aide du modeleur graphique) afin de faire une copie de ta couche bâtiments, que tu découpe avec l'emprise de ton cercle, il te faut la surface initiale dans un champs, tu calcule la nouvelle surface, et tu fais un ration avec le nombre de personne pour l’ensemble du bâtiment (tu va avoir des bouts de personnes c'est normale) et pour finir tu compte le nombre de personne touché.
C'est comme cela que je ferais ( j'utilise déjà cette méthode pour le calcule de personne impacté pour les étude de danger éoliens).
Vincent
Hors ligne
#3 Wed 22 February 2023 14:07
- emmal
- Participant occasionnel
- Date d'inscription: 22 Feb 2023
- Messages: 11
Re: QGIS: Utilisation de Pyqgis
Oui je suis d'accord que c'est absurde mais bon, je fais le boulot demandé par mon boss. Justement j'avais commencé l'ébauche d'un script :
from qgis.core import *
projet = qgsproject.instance()
poly = projet.mapLayersByName('poly')
zoneimpact = projet.mapLayersByName('zoneimpact')
interpolation = projet.mapLayersByName('interpolation')
processing.runalg('qgis:intersection',poly,zoneimpact,interpolation)
n'y connaissant pas grand chose à PyQgis c'est compliqué...
Merci !
Hors ligne
#4 Wed 22 February 2023 14:53
- Vincent Vauchey
- Participant assidu
- Lieu: saint jean de braye
- Date d'inscription: 24 Jan 2006
- Messages: 288
Re: QGIS: Utilisation de Pyqgis
passez par le modeleur graphique, cela sera plus simple que de chercher à écrire la base du code, après il suffit de l'exporter en script Python pour avoir plus de possibilités si le modeleur graphique ne suffit pas.
Vincent
Hors ligne
#5 Wed 22 February 2023 15:14
- emmal
- Participant occasionnel
- Date d'inscription: 22 Feb 2023
- Messages: 11
Re: QGIS: Utilisation de Pyqgis
Je suis désolée je ne sais pas ce qu'est le modeleur graphique
Hors ligne
#6 Thu 23 February 2023 09:06
- Vincent Vauchey
- Participant assidu
- Lieu: saint jean de braye
- Date d'inscription: 24 Jan 2006
- Messages: 288
Re: QGIS: Utilisation de Pyqgis
dans Qgis, menu traitement > Modeleur graphique est une interface qui permet de créer des scripts Python avec des modules existant dans Qgis.
Vincent
Hors ligne
#7 Thu 23 February 2023 14:36
- emmal
- Participant occasionnel
- Date d'inscription: 22 Feb 2023
- Messages: 11
Re: QGIS: Utilisation de Pyqgis
Auriez-vous un exemple de script via ce modeleur ou une documentation dessus ?
Hors ligne
#8 Thu 23 February 2023 14:50
- Vincent Vauchey
- Participant assidu
- Lieu: saint jean de braye
- Date d'inscription: 24 Jan 2006
- Messages: 288
Re: QGIS: Utilisation de Pyqgis
C'est assez intuitif, voir exemple.
Pour extraire des entités en fonction d'une zone et en faire un excel.
Vincent
Dernière modification par Vincent Vauchey (Thu 23 February 2023 14:51)
Hors ligne
#9 Thu 23 February 2023 14:57
- emmal
- Participant occasionnel
- Date d'inscription: 22 Feb 2023
- Messages: 11
Re: QGIS: Utilisation de Pyqgis
Merci beaucoup, je vais y jeter un coup d'oeil
Hors ligne