Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Thu 09 May 2019 12:01

zakarya2626
Participant occasionnel
Date d'inscription: 9 May 2019
Messages: 13

QGIS 2.8.2: Utiliser EXtract_by_location

Bonjour,

J'essaie d'utiliser la commande 'qgis:extractbylocation' dans QGIS 2.8.2 sur la console Python

Code:

#Récupérer tous les départements qui s'intersectent avec la zone d'étude
    res=processing.runalg('qgis:extractbylocation', departementLayer, layerZone, u'intersects', 0,None)
    #Créer une couche vector issue de l'extraction des départements dans la zone
    departementLayer=QgsVectorLayer(res['OUTPUT'], "Departement(s) dans la zone d'etude", "ogr")
    # QgsMapLayerRegistry.instance().addMapLayer(departementLayer)  
    #Définir un ecodage Windows compatible avec le français
    departementLayer.setProviderEncoding(u'iso-8859-1')
    #Modifier l'encoage
    departementLayer.dataProvider().setEncoding(u'iso-8859-1')
    #Vérifier que le couche est valide sinon afficher que la couche est erronée
    if not departementLayer.isValid():
        print "Layer failed to load!"
    #QgsMapLayerRegistry.instance().addMapLayer(departementLayer)  
    #Modifier la barre de procession à 11%
    self.dlg.progressBar.setValue(11)

j'essaie d'extraire les département qui s'intersectent avec la zone d'étude. Quand j'exécute le code , ça m'affiche pas seulement les département dans la zone d'étude mais même les départements qui limitent de la zone d'étude (avoisinants). Ma question est la suivante : quelle commande je dois utiliser pour avoir juste les départements à l'intérieur de la zone d'étude ? J'ai déjà essayé

Code:

('qgis:extractbylocation', departementLayer, layerZone, u'within', 0,None)

Mais pas de résultat. Merci d'avance, Cordialement

Hors ligne

 

#2 Thu 16 May 2019 14:39

romainbh
Participant assidu
Date d'inscription: 20 Aug 2013
Messages: 355

Re: QGIS 2.8.2: Utiliser EXtract_by_location

Si vos couches ne sont pas pile poil alignées, il se peut que de minuscules parties se superposent effectivement, ce qui cause votre souci. Il faudrait au préalable accrocher les couches entre elles avant de faire tourner votre algorithme.

Hors ligne

 

#3 Mon 20 May 2019 09:46

zakarya2626
Participant occasionnel
Date d'inscription: 9 May 2019
Messages: 13

Re: QGIS 2.8.2: Utiliser EXtract_by_location

Bonjour,
Merci pour votre réponse monsieur . Effectivement je viens de vérifier ça et comme vous l'avez mentionner , il y a une chevauchement entre les différentes entités de la même couche . Ma question est : comment je peux accrocher mes couches entre elles ?

Hors ligne

 

Pied de page des forums

Powered by FluxBB