Pages: 1
- Sujet précédent - QGIS 2.8.2: coordonnées automatique dans table attributaire - Sujet suivant
#1 Tue 22 March 2016 16:48
- nico3926
- Juste Inscrit !
- Date d'inscription: 26 May 2008
- Messages: 9
QGIS 2.8.2: coordonnées automatique dans table attributaire
Bonjour
Je suis débutant en SIG je n'utilise que QGIS. Je me sert des différents tuto et forum pour arriver a mes fins qui reste relativement simple en général.
Je sollicite votre aide aujourd'hui car je souhaite réaliser une carte de présence absence d'une espèce par maille. j'arrive à faire l'analyse par maille sans problème.
Je bloque dans la réalisation du formulaire.
j'ai des données qui proviennent de différents observateurs. Certaines sont géolocalisées précisément, d'autre, je n'ai que le nom de la commune.
J'aimerais pouvoir rentrer mes observations de 2 manières:
Pour les données géolocalisé, ajouter une entité directement sur la carte et que le nom de la commune et les coordonnées X et Y se mettent automatique dans ma table d'attribut.
Pour les observations non géolocalise, rentrer le nom de la commune dans la table d'attribut (j'ai crée une liste déroulante a partir de la couche commune de BD Carto de l'IGN) et je voudrais que l'entité se positionne sur le centroïde de la commune dont les coordonnées sont aussi dans la couche commune de BD Carto de l'IGN.
J'espère avoir été clair dans mes explications.
Je ne sais pas si ce que je souhaite est réalisable mais je remercie d'avance ceux vont prendre le temps de lire mon message et d'y réfléchir un peut.
Hors ligne
#2 Fri 25 March 2016 11:59
- nico3926
- Juste Inscrit !
- Date d'inscription: 26 May 2008
- Messages: 9
Re: QGIS 2.8.2: coordonnées automatique dans table attributaire
Re-Bonjour
Vu l'absence de réponse je pense que ce que souhaite faire n'est pas réalisable.
Je vais donc essayer de simplifier la chose.
Je vais renter toutes mes nouvelles entités directement sur la carte. j'ai lu qu'il était possible d'avoir les cordonnées directement dans la table d'attribut avec la fonction $x et $y mais je n'ai pas réussi à le faire. comment faut il procéder?
Est-il possible d'avoir aussi le nom de la commune dans ma table avec une jointure de ma couche commune?
merci de votre aide.
Hors ligne
#3 Fri 25 March 2016 14:08
- Elodiecg
- Participant occasionnel
- Date d'inscription: 19 Jun 2007
- Messages: 16
Re: QGIS 2.8.2: coordonnées automatique dans table attributaire
Bonjour,
Pour mettre les coordonnées dans ta table, il faut utiliser la calculatrice de champ (bouton avec un boulier).
Dans cette fenêtre, soit tu remplis un champ existant (X ou Y) si tu les as déjà créés (dans ce cas vérifie que ce sont bien des champs de "nombres"), soit tu crées un nouveau champ.
Ensuite tu écris simplement $x dans la case te demandant la formule et tu valides.
Ensuite tu recommences pareil pour Y, avec $y
Pour associer la commune il faut que tu utilises la fonction Vecteur/Outils de gestion de données/Joindre les attributs par localisation
En espérant que mes explications sont claires,
Hors ligne
#4 Fri 25 March 2016 14:46
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3799
Re: QGIS 2.8.2: coordonnées automatique dans table attributaire
Bonjour,
L'absence de réponse ne signifie pas forcément que ce que vous vouliez est impossible. Elle peut signifier que la question est trop large/vague pour en espérer une réponse claire et concise (les gens peuvent n'avoir qu'une réponse partielle) ou juste que les personnes susceptibles de bien vous répondre n’étaient pas dispo ou ne l'ont pas vue passer.
Bref...
Ce que vous souhaitez faire peut être fait en couplant à votre formulaire des fonctions en Python. Connaissez-vous ce langage?
Cela peut aussi se faire via du SQL, notamment avec une base SpatiaLite. Peut-être ceux qui ont essayé la couche virtuelle de la 2.14 sauront dire si cela peut aussi être une piste ou pas.
Sinon, tout en restant dans une interface table attributaire classique, ce que je vois comme démarche:
- Ouvrir la calculatrice de champ, créer deux champs virtuels coord_x, coord_y à votre couche et y appliquer respectivement les formules $x et $y: chaque fois que vous validerez un point, ces champs se peupleront automatiquement
- Pour récupérer le nom de la commune, j'ai compris que vous avez une couche spatiale des communes ( de la BDcarto). Je n'ai pas trop regardé de façon pratique les récentes évolutions sur les fonctions géométriques natives de QGIS, donc vais opter pour l'installation de l'extension refFunctions. Une fois installée, créez pareil un champ virtuel nom_commune et saisissez-y la formule
geomwithin('lenomdelacoucheBDCarto, 'lechampquicontientlenomdelacommunedanslabdcarto')
Pour tout point à l'intérieur d'une commune, ça récupérera le nom de celle-ci.
Pour l'option création du point via la saisie de la commune simple, il y a moyen de récupérer les coordonnées du centroïde mais je ne vois pas encore (!) comment facilement créer la géométrie dans le shapefile du même projet à partir de la table attributaire, sans se tirer les cheveux...
Bon courage...
PS: un champ virtuel n'est visible que dans le projet où il est créé donc il vous faudra enregistrer la couche sous un autre nom pour l'avoir avec toutes les infos de coordonnées et qui soit utilisable partout
PS2: vous pouvez donc ne pas créer ces champs comme virtuel. Dans ce cas, il faudra exécuter les formules dessus via la calculatrice, une fois les saisies faites pour avoir le champ à jour.
Hors ligne
#5 Tue 29 March 2016 14:55
- nico3926
- Juste Inscrit !
- Date d'inscription: 26 May 2008
- Messages: 9
Re: QGIS 2.8.2: coordonnées automatique dans table attributaire
Merci beaucoup pour vos 2 réponses.
ça marche parfaitement.
Je ne connaissais pas l'utilité du champ virtuel merci pour les explications.
Hors ligne
#6 Mon 24 April 2017 23:01
- nico3926
- Juste Inscrit !
- Date d'inscription: 26 May 2008
- Messages: 9
Re: QGIS 2.8.2: coordonnées automatique dans table attributaire
Bonjour
je reviens sur ce post car j'ai un problème avec le plugin reffunction. il fait planter qgis et se désinstalle.
la formule: geomwithin('lenomdelacoucheBDCarto, 'lechampquicontientlenomdelacommunedanslabdcarto'), ne fonctionne donc plus.
Quelqu'un a t'il une solution soit pour réinstaller reffunction ou pour incrémenter automatiquement mes noms de communes
Merci d'avance.
Hors ligne
Pages: 1
- Sujet précédent - QGIS 2.8.2: coordonnées automatique dans table attributaire - Sujet suivant