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 Tue 15 May 2012 16:31

B.Arnaud
Participant occasionnel
Date d'inscription: 13 Jan 2011
Messages: 19

QGIS: déterminer centroid de polygone

Bonjour,

J'essaye de déterminer les coordonnées des centroids d'une maille que je viens de créer.

J'ai tenté l'outils :  vecteur->outils de géométrie-> centroid des polygones.   Effectivement il me donne les centroids de ma maille, mais le problème est que dans la table attributaire il y a 5 colonnes (id; xmin; xmax; ymin; ymax). Je ne sais pas à quoi correspondent les "min" et "max", je ne vois pas comment obtenir les coordonnées des points sous la forme "id;x;y", c'est à dire sans qu'il y ai la présence des "min" et "max".

Si quelqu'un peu m'éclairer, merci d'avance.

Dernière modification par B.Arnaud (Tue 15 May 2012 16:31)

Hors ligne

 

#2 Wed 16 May 2012 11:02

PA
Membre
Lieu: Paris
Date d'inscription: 5 Sep 2005
Messages: 3259
Site web

Re: QGIS: déterminer centroid de polygone

Bonjour,

Pour créer deux champs X et Y, utilisez l'outil Vecteur -> Outils de Géométrie -> Exporter/Ajouter des colonnes de géométrie.


Pierre-André Le Ny
Modérateur QGIS, Données, Coin de l'OpenSource
Aidez l'association GeoRezo !

Hors ligne

 

#3 Thu 10 March 2016 10:03

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

Bonjour, je n'ai pas compris la solution de PA.

J'ai créé une grille de polygone avec l'outils vecteur -> outils de recherche -> grille vecteur

J'obtiens une table avec les champs ID, X_MIN, X_MAX, Y_MIN, Y_MAX

Je souhaite ajouter deux colonnes avec les coordonnées X et Y du centroïde de chaque maille, y a-t-il une fonction spécial?

Hors ligne

 

#4 Thu 10 March 2016 10:40

Dof
Participant assidu
Lieu: Grenoble
Date d'inscription: 28 Oct 2009
Messages: 317
Site web

Re: QGIS: déterminer centroid de polygone

Bonjour,
J'imagine que vous avez généré une table de polygones qui à pour attributs les chmaps "ID, X_MIN, X_MAX, Y_MIN, Y_MAX"
Pour générer le x y des centroids de ces polygons en attribut, vous pouvez utiliser la calculatrice de champs :
x :  x(centroid( $geometry))
y :  y(centroid( $geometry))

Hors ligne

 

#5 Thu 10 March 2016 10:55

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

Oui j'ai généré une table de polygones qui a pour attributs les champs "ID, X_MIN, X_MAX, Y_MIN, Y_MAX"

L'expression indiquée ne fonctionne pas chez moi..., voilà comment se présente la grille en pièce jointe


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#6 Thu 10 March 2016 15:03

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

En attendant j'ai créé les points des centroïdes et j'ai jointé leur coordonnées X et Y (avec ma couche de polygone) par localisation.

Dans MapInfo il y avait les fonctions CentroidX(obj) et CentroidY(obj), il n'y a pas d'équivalent dans Qgis ?

Hors ligne

 

#7 Thu 10 March 2016 16:29

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

Réponse à moi même : dans QspatiaLite :

Coordonnée X du centroïde du polygone:

Code:

ST_X(ST_Centroid(Geometry))

Coordonnée Y du centroïde du polygone:

Code:

ST_Y(ST_Centroid(Geometry))

Hors ligne

 

#8 Thu 10 March 2016 16:40

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3811

Re: QGIS: déterminer centroid de polygone

Bonjour,

Lucien a écrit:

Dans MapInfo il y avait les fonctions CentroidX(obj) et CentroidY(obj), il n'y a pas d'équivalent dans Qgis ?


Avez-vous essayé la formule proposée par Dof? formule qui pourrait être simplifiée en x($geometry), la fonction x renvoyant  le x soit du point soit du centroide en cas de géométrie non ponctuelle (cf. aide de la fonction)

Hors ligne

 

#9 Thu 10 March 2016 16:45

PA
Membre
Lieu: Paris
Date d'inscription: 5 Sep 2005
Messages: 3259
Site web

Re: QGIS: déterminer centroid de polygone

Merci pour le suivi. Désolé, j'ai pensé que vous aviez déjà créé vos centroïdes.


Pierre-André Le Ny
Modérateur QGIS, Données, Coin de l'OpenSource
Aidez l'association GeoRezo !

Hors ligne

 

#10 Tue 24 May 2016 09:22

OliveT21
Participant occasionnel
Date d'inscription: 7 Dec 2006
Messages: 39

Re: QGIS: déterminer centroid de polygone

Bonjour,

Je remonte le sujet car même avec toutes les explications trouvées, je ne parviens pas au résultat.

Dans MapInfo il y avait les fonctions CentroidX(obj) et CentroidY(obj), il n'y a pas d'équivalent dans Qgis ?
Je cherche à créer 2 nouvelles colonnes X et Y dans ma table d'objet polygones et les remplir avec les coordonnées X et Y des centroides.
C'était si simple sous MapInfo, mais je n'y arrive pas sous Qgis.

Merci de votre aide.

Hors ligne

 

#11 Tue 24 May 2016 09:47

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

Bonjour,

À partir de la 2.12 tu peux créer ta colonne directement dans la calculatrice de champ grâce à : x(geom) et y(geom)
(https://www.qgis.org/fr/site/forusers/v … ngelog212/)


Sinon, dans les versions d'avant en passant par SpatiaLite tu peux utiliser : ST_X(ST_Centroid(Geometry)) et ST_Y(ST_Centroid(Geometry))

Dernière modification par Lucien (Tue 24 May 2016 09:49)

Hors ligne

 

#12 Tue 24 May 2016 09:50

OliveT21
Participant occasionnel
Date d'inscription: 7 Dec 2006
Messages: 39

Re: QGIS: déterminer centroid de polygone

Bonjour,

Je suis en version 2.8.2 et la calculatrice de champ m'indique "L'expression est invalide" quand je mets x(geom) dans l'expression.

Je ne connais pas SpatiaLite, donc je ne peux pas m'y plonger.

Hors ligne

 

#13 Tue 24 May 2016 09:51

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3811

Re: QGIS: déterminer centroid de polygone

Bonjour,
C'est tout aussi simple sous QGIS: faites donc x($geometry) et y($geometry).
Dans la calculatrice de champs, vous avez un troisième panneau qui contient la description de chacune des fonctions disponibles; elle peut être utile par moments pour trouver les fonctions dont on a besoin.

EDIT: si vous êtes en 2.8, alors il devrait exister une fonction centroid qui renvoie l'objet centroide soit en "trichant" un peu, xmin(centroid($geometry))

Dernière modification par SANTANNA (Tue 24 May 2016 09:57)

Hors ligne

 

#14 Tue 24 May 2016 09:54

OliveT21
Participant occasionnel
Date d'inscription: 7 Dec 2006
Messages: 39

Re: QGIS: déterminer centroid de polygone

Bonjour,

J'ai toujours la même erreur "L'expression est invalide" avec cette fonction x($geometry).

Et le 3ème panneau n'est pas très locace sur la description des fonctions et leurs utilisations, c'est très très sommaire.

Hors ligne

 

#15 Tue 24 May 2016 09:59

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

-

Dernière modification par Lucien (Tue 24 May 2016 10:11)

Hors ligne

 

#16 Tue 24 May 2016 10:05

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3811

Re: QGIS: déterminer centroid de polygone

Et le 3ème panneau n'est pas très locace sur la description des fonctions et leurs utilisations, c'est très très sommaire.


Qu'auriez-vous aimé avoir de plus? QGIS est un projet qui vit des idées et apports de chacun donc si vous pensez que ce pourrait être plus clair, sur ce forum ou , vous trouverez moyen de faire remonter vos idées/"réclamations" aux développeurs.

PS: j'ai édité ma réponse plus haut avec ce qui devrait être une solution en v2.8

Hors ligne

 

#17 Tue 24 May 2016 10:09

Lucien
Participant actif
Date d'inscription: 8 Mar 2016
Messages: 104

Re: QGIS: déterminer centroid de polygone

Merci Santanna je n'avais pas pensé à cette solution!

Hors ligne

 

#18 Tue 24 May 2016 10:11

OliveT21
Participant occasionnel
Date d'inscription: 7 Dec 2006
Messages: 39

Re: QGIS: déterminer centroid de polygone

Bonjour,

Désolé de vous avoir heurté. Je me suis résolu à venir poser la question sur le forum car je ne trouvais pas de réponse, ni dans le panneau descriptif de la fonction dont le contenu ne me parlait pas plus que ça, ni sur les forums.

Et je ne connais pas le langage SQL (ou si peu) pour mettre en oeuvre les autres alternatives proposées.

Merci de l'édition de la solution pour la version 2.8, je ne vois pas comment j'aurais pu la trouver tout seul.

Hors ligne

 

#19 Tue 24 May 2016 10:42

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3811

Re: QGIS: déterminer centroid de polygone

Désolé de vous avoir heurté. Je me suis résolu à venir poser la question sur le forum car je ne trouvais pas de réponse, ni dans le panneau descriptif de la fonction dont le contenu ne me parlait pas plus que ça, ni sur les forums.


C'est moi qui suis désolé que vous croyiez m'avoir heurté. Je vous invitais (en tout cas, c'est ce que j'essayais) juste à mieux préciser ce que vous auriez trouvé plus parlant, le genre d'éléments que vous auriez aimé y trouver. Désolé.

Hors ligne

 

#20 Tue 24 May 2016 10:58

OliveT21
Participant occasionnel
Date d'inscription: 7 Dec 2006
Messages: 39

Re: QGIS: déterminer centroid de polygone

Autant pour moi, désolé pour ce quiproco.
Je ne pensais pas qu'on pouvait faire remonter plus haut ce genre de recherche d'information.

En tout cas, la formule proposée mériterait d'être documentée car je ne l'ai trouvé nulle part.

Hors ligne

 

#21 Tue 24 May 2016 10:59

J.San José
Participant occasionnel
Date d'inscription: 7 Sep 2015
Messages: 14

Re: QGIS: déterminer centroid de polygone

Bonjour,

petite solution si vous cherchez à faire des points de surface (et non des centroïds), il y a l'extension realcentroid qui existe dans les plugins Qgis.

C'est simple, efficace et rapide, à la condition que vos géométries soient clean.

Cordialement.

Hors ligne

 

#22 Tue 24 May 2016 13:40

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3811

Re: QGIS: déterminer centroid de polygone

OliveT21 a écrit:

Autant pour moi, désolé pour ce quiproco.
Je ne pensais pas qu'on pouvait faire remonter plus haut ce genre de recherche d'information.


Sans vouloir faire du "non, c'est moi", "non, c'est plutôt moi"... smile Je pense vraiment qu'il faut que je réapprenne à écrire français calmement (peut-être avec plein de smileys contents?).
Ceci dit, la formule proposée sera documentée dans la prochaine version désormais. Et oui, il n'y a aucune barrière pour remonter les infos aux développeurs ou de participer aux projets selon vos capacités (techniques, financières, rédactionnelles, de traducteur, de testeur, ou des idées...) et à votre rythme. Toutes les portes sont open (Désolé les modos, si ça ressemble à du racolage).

@J.San José, sinon, sans créer de nouvelle couche, il y a aussi la fonction point_on_surface (mais dans les versions plus récentes de QGIS).

Hors ligne

 

#23 Tue 24 May 2016 14:24

J.San José
Participant occasionnel
Date d'inscription: 7 Sep 2015
Messages: 14

Re: QGIS: déterminer centroid de polygone

Thanks SANTANNA,

j'avais vu passé la fonction, et j'avoue que je n'ai toujours pas testé, je suis un papi du sig maintenant, j'ai mes habitudes... wink
Mais je vais tester à la prochaine occaz c'est un bon rappel.

A+

Hors ligne

 

Pied de page des forums

Powered by FluxBB