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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#31 Tue 12 July 2016 15:31

YoLecomte
Participant assidu
Lieu: Epinal
Date d'inscription: 7 Jul 2015
Messages: 266

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

C'est en quelque sorte la légende. Elle est renseigné dans le champ étiquette de la règle (on pourrait dire que c'est l'intitulé de la règle).
Ensuite dans Filtre, on choisit a quelle entités on veut appliquer la règle.
En dessous, on retrouve la gestion de la symbologie classique, ici on choisis un générateur de géometrie de type polyligne auquel on passe l'expression make_line blablabla...

C'est plus clair?

Hors ligne

 

#32 Tue 12 July 2016 15:34

mathmaroc
Participant actif
Date d'inscription: 20 Mar 2013
Messages: 103

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Oui merci beaucoup pour votre aide et votre patience.

Mathmaroc

Hors ligne

 

#33 Tue 12 July 2016 17:03

YoLecomte
Participant assidu
Lieu: Epinal
Date d'inscription: 7 Jul 2015
Messages: 266

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Pas de quoi! Bon courage pour la suite!

Hors ligne

 

#34 Tue 10 January 2017 10:59

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Bonjour,

Je fais suite à cette discussion car je souhaiterais affiner la fonction dans le cas où l'étiquette se situe à l'ouest du ponctuel. Le trait va jusqu'au début de l'étiquette et passe parfois sous l'étiquette. C'est juste une question de style, la fonction précédemment citée marche bien de mon côté.

Je me disais qu'il doit être possible (ou pas encore) de récupérer l'emprise spatiale du texte de l'étiquette (notamment avec la fonction bounds_width) et ensuite de récupérer le dernier vertex de cette géométrie (avec end_point) pour remplacer les coordonnées des étiquettes qui sont à l'ouest des points.

Ce qui donnerait :

Code:

make_line(point_n($geometry,1), end_point(bounds_width("champ_etiquette"))

Malheureusement, le nom du champ n'est pas une géométrie donc ça ne fonctionne pas.

Si quelqu'un a une piste.

Pierre

PS : apparemment une QEP est ouverte à ce sujet : https://github.com/qgis/QGIS-Enhancemen … /issues/73

Dernière modification par Hydrolithe (Tue 10 January 2017 11:04)

Hors ligne

 

#35 Wed 11 January 2017 10:06

YoLecomte
Participant assidu
Lieu: Epinal
Date d'inscription: 7 Jul 2015
Messages: 266

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Salut,

Sinon une solution pas très élégante pour contourner, tu peux mettre un fond à ton étiquette. La ligne passera en dessous et sera cachée.

Hors ligne

 

#36 Wed 11 January 2017 10:57

Hydrolithe
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Apr 2010
Messages: 223

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Merci YoLecomte de ton retour.

Après un échange avec Nyall Dawson au sujet de la QEP #73 et du sujet de ma demande, il semble que ce ne soit pas possible dans Qgis actuellement :

Your request is actually quite complicated. The way QGIS renders layers is that it first draws ALL layers symbols (no labels). Then, it uses the knowledge of which symbols have been rendered and feeds all these features into the label engine which then calculates the placement of individual labels. Ie: first symbols, then labels. Consequently the symbol rendering has no knowledge of the placement of labels for use with symbol expressions or geometry generator symbols.

Unfortunately because this "symbol-first, then labels" design is central to how QGIS rendering works, it would be a HUGE task to change this (ie multiple weeks of developer time). I wish this was as simple as adding a new expression function (which is often only a couple of lines of code!) but in this case it's not a simple task at all.


Pierre

Dernière modification par Hydrolithe (Wed 11 January 2017 10:58)

Hors ligne

 

#37 Sat 01 July 2017 09:42

Bartimeus89
Juste Inscrit !
Date d'inscription: 30 Jun 2017
Messages: 1

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Bonjour,

Je viens souvent sur ce site pour trouver réponse à mes (nombreuses) question de néophyte sur le SIG, merci à tous les contributeurs !

Je relance ce sujet car je rencontre le même problème que la personne précédente : je voudrais afficher des connecteurs entre des points et des étiquettes, sans succès pour l'instant.
Je vous expose mon cas : je travaille sous QGIS 2.14, et j'ai installé l'extension EasyCustomLabeling. Dans la table attributaire de ma couche de points j'ai créé 2 champs X et Y pour les coordonnées des étiquettes. Sur la couche créée via EasyCustom j'ai renseigné ces champs X et Y comme coordonnées dans Emplacement. Jusque là tout va bien, les étiquettes s'affichent et je peux les déplacer.

Vient le problème des connecteurs, j'ai suivi la manip décrite précédemment mais cela ne donne rien : Propriétés de la couche > Style > Symbole unique > Générateur de géométrie > Polyligne/Multi polyligne > make_line(make_point(  $x , $y ), make_point(  "X" , "Y" ))
Mais aucune ligne n'apparait... Quand je suis dans Propriétés de la couche > Style > Symbole unique > Line, je remarque que la largeur de la ligne est de 0 et que la couleur est en "invisible", mais j'ai beau le modifier toujours pas de ligne... Et quand je descends dans "l'arborescence" du style, Line > Générateur de géométrie > Line, la ligne a bien une épaisseur et une couleur...

Je ne sais pas si je suis très claire, mais si vous avez une idée je suis preneuse, ça fait plusieurs heures que je m'arrache les cheveux, sans résultat sad

Merci d'avance !

Bartimeus

Hors ligne

 

#38 Tue 04 July 2017 17:46

JD
Moderateur
Date d'inscription: 8 Aug 2013
Messages: 726

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Bonsoir,

normalement pour créer une couche de connecteur, l'étape est simple.

1 - Sélectionner la couche qui va servir à générer les étiquettes.
2- Cliquer sur EasyCustom Labelling
3- Sélectionner le champs d'étiquetage

La couche générée est une couche une couche d'étiquette entièrement paramétrée qui est une couche en réalité une couche de connecteur.

Au départ, les connecteurs ne sont pas visibles car l'étiquette est située sur le centroïde de l'objet.
En revanche, si une étiquette est déplacée, le connecteur est visible car une polyligne est créé entre le centroïde de l'objet
et l'emplacement de l'étiquette.

Démo en pj

Dernière modification par lejedi76 (Tue 04 July 2017 17:48)


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

Hors ligne

 

#39 Thu 06 July 2017 14:26

Xavier Julian
Participant assidu
Lieu: Orange
Date d'inscription: 19 Jan 2015
Messages: 218

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Merci lejedi76 d'avoir pris le temps de faire une démo en GIF animé !
Très intéressant.

++

Hors ligne

 

#40 Thu 06 July 2017 14:33

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

Re: QGIS 2.0.1: Liaison d'une étiquette à son point respectif

Bonjour à tous,

C'est effectivement très bien vu!
Quel sens du service smile


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

Hors ligne

 

Pied de page des forums

Powered by FluxBB