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!

#1 Wed 20 February 2019 19:44

jiptwo19
Participant actif
Lieu: drummondville, québec
Date d'inscription: 3 Jan 2019
Messages: 56

QGIS vers DXF: ''annotation de texte''

bonjour
Sur qgis... j'utilise la fonction ''annotations de texte'' et je l'attribut sur une de mes couches ''dénombrement''
voir pièce jointe

mais quand je transfert mes données en dxf pour l'ouvrir dans Autocad .. elle n’apparaît pas

Si ceci ne fonctionne pas avec la fonction ''annotations de texte'' existe t'il une autre façon d'avoir une boite de dialogue avec point relié

Merci


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

Hors ligne

 

#2 Thu 21 February 2019 09:21

MathieuR
Membre
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1690
Site web

Re: QGIS vers DXF: ''annotation de texte''

Bonjour,

Les annotations ne sont pas exportables à moins d'en extraire l'information stockée en XML dans le projet

Les étiquettes sont plus adaptées pour cela. Dans QGIS 3, elles sont exportables : cf https://oslandia.com/en/2017/10/17/auxi … in-qgis-3/ . Aller dans propriétés de la couche > auxiliary storage > export

Pour créer le connecteur sur une couche de polygones, utiliser style > générateur de géométrie et taper :

Code:

make_line(centroid($geometry), 
          make_point("auxiliary_storage_labeling_positionx",
                     "auxiliary_storage_labeling_positiony"))

auxiliary_storage_labeling_positionx et auxiliary_storage_labeling_positiony sont des variables de données auxiliaires, liées au nouveau format qgz, donnant la position de l'étiquette

Dans QGIS 2, il faut passer par easycustomlabelling


geodata au cerema et petits billets en géomatique

Hors ligne

 

#3 Thu 21 February 2019 14:32

jiptwo19
Participant actif
Lieu: drummondville, québec
Date d'inscription: 3 Jan 2019
Messages: 56

Re: QGIS vers DXF: ''annotation de texte''

MathieuR a écrit:

Bonjour,

Les annotations ne sont pas exportables à moins d'en extraire l'information stockée en XML dans le projet

Les étiquettes sont plus adaptées pour cela. Dans QGIS 3, elles sont exportables : cf https://oslandia.com/en/2017/10/17/auxi … in-qgis-3/ . Aller dans propriétés de la couche > auxiliary storage > export

Pour créer le connecteur sur une couche de polygones, utiliser style > générateur de géométrie et taper :

Code:

make_line(centroid($geometry), 
          make_point("auxiliary_storage_labeling_positionx",
                     "auxiliary_storage_labeling_positiony"))

auxiliary_storage_labeling_positionx et auxiliary_storage_labeling_positiony sont des variables de données auxiliaires, liées au nouveau format qgz, donnant la position de l'étiquette

Dans QGIS 2, il faut passer par easycustomlabelling


Merci Mathieu de tes réponses
je suis sur 3.4.4
disons que je ne comprend pas ou mettre le code ... disons que je suis un peu perdu
si possible soit plus précis disons que je suis débutant sur certaine chose

tu peux m'envoyer photo ou video par mon email au besoin si c'est plus facile pour toi

merci de ta compréhension
JPB
smile

Hors ligne

 

#4 Thu 21 February 2019 15:45

MathieuR
Membre
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1690
Site web

Re: QGIS vers DXF: ''annotation de texte''

Sous QGIS 3.4, dans la barre du haut où y a plein de boutons, il existe un bouton déplacer les étiquettes et les diagrammes
Il te suffit de l'utiliser pour déplacer une étiquette
La position de l'étiquette est stockée dans le qgz en tant qu'auxiliary data storage
Si tu relies la position de l'étiquette au centroïde de l'objet concerné, tu obtiens ton connecteur
Pour le faire apparaître, il faut utiliser le style générateur de géométrie : couche > Propriétés > style > Ajouter générateur de géométrie et mettre le code ci-dessus en mentionnant bien le type ligne

Voir la doc : https://www.qgis.org/fr/docs/index.html

Et ce lien relatif à ton souci : https://gis.stackexchange.com/questions … n-with-lab il y a des copies d'écran dedans

En gros, ce que tu dois connaître avant de faire ça, c'est :
- comprendre comment les étiquettes fonctionnent, comment on les déplace
- connaître les expressions de calculateur de champ
- connaître les styles avancés de QGIS, notamment générateur de géométrie

Déplacer une étiquette est assez simple, mais faire apparaître le connecteur est une opération plutôt avancée.


geodata au cerema et petits billets en géomatique

Hors ligne

 

#5 Thu 21 February 2019 17:34

jiptwo19
Participant actif
Lieu: drummondville, québec
Date d'inscription: 3 Jan 2019
Messages: 56

Re: QGIS vers DXF: ''annotation de texte''

MathieuR a écrit:

Sous QGIS 3.4, dans la barre du haut où y a plein de boutons, il existe un bouton déplacer les étiquettes et les diagrammes
Il te suffit de l'utiliser pour déplacer une étiquette
La position de l'étiquette est stockée dans le qgz en tant qu'auxiliary data storage
Si tu relies la position de l'étiquette au centroïde de l'objet concerné, tu obtiens ton connecteur
Pour le faire apparaître, il faut utiliser le style générateur de géométrie : couche > Propriétés > style > Ajouter générateur de géométrie et mettre le code ci-dessus en mentionnant bien le type ligne

Voir la doc : https://www.qgis.org/fr/docs/index.html

Et ce lien relatif à ton souci : https://gis.stackexchange.com/questions … n-with-lab il y a des copies d'écran dedans

En gros, ce que tu dois connaître avant de faire ça, c'est :
- comprendre comment les étiquettes fonctionnent, comment on les déplace
- connaître les expressions de calculateur de champ
- connaître les styles avancés de QGIS, notamment générateur de géométrie

Déplacer une étiquette est assez simple, mais faire apparaître le connecteur est une opération plutôt avancée.


Merci
en gros je comprend les champs... les attributs de champs et comment faire des étiquettes
j'ai trouvé ou mettre le code que tu m'as envoyé (voir piece jointe)

mais je rencontre un autre problème c'est que dans les champs je ne peux faire ''enter'' pour changer de ligne
la case est limité en espace ...

je ne veux pas mettre plusieurs champs car ceci est le même champ
comme dans mon exemple
(1-12)M
(13-24)SP01, 1-12
(25-144)M
Et je ne veux pas dans une commande d'étiquette faire || n'||

car ceci ne va pas m'aider a rentré les informations correctement

Et en passant je ne comprend pas la relation d'ou on met le code et l'étiquette ... car rien ne s'affiche quand je rempli un champs et quand je place un point de ma couche

merci!


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

Hors ligne

 

#6 Thu 21 February 2019 18:06

MathieuR
Membre
Lieu: aix-en-provence
Date d'inscription: 16 Feb 2009
Messages: 1690
Site web

Re: QGIS vers DXF: ''annotation de texte''

Bonjour,

Pour aller à la ligne, il faut utiliser \n et concaténer avec ||

Par exemple :

Code:

'attention je vais aller à la ligne !'||'\n'||'ça y est je suis retourné à la ligne'

Pour les étiquettes, il faut aller ailleurs, cad dans couche > propriétés de la couche > étiquettes : le volet étiquettes qu'on voit dans votre image (et pas dans style)

Donc les connecteurs se mettent dans Style et les étiquettes dans Etiquettes.


geodata au cerema et petits billets en géomatique

Hors ligne

 

#7 Fri 22 February 2019 07:16

Robin
GeoRezo forever
Lieu: France
Date d'inscription: 31 Aug 2005
Messages: 13614
Site web

Re: QGIS vers DXF: ''annotation de texte''

Pour créer le connecteur sur une couche de polygones, utiliser style > générateur de géométrie :
[...]Dans QGIS 2, il faut passer par easycustomlabelling


En fait ce n'est pas obligé d'utiliser ce plugin (je suis pas fan)  ! On peut faire le même genre de formules. Il suffit de créer des champs X_ETIKT et Y_ETIKT (par exemple) et de définir l'emplacement de l'étiquette dans les propriétés de la couche.

Puis tu crée ton connecteur avec une formule très similaire :

Code:

make_line(centroid($geometry), make_point("X_ETIKT","Y_ETIKT"))

Le truc pour que le connecteur ne croise pas le texte quand on le déplace, c'est qu'il faut éventuellement rajouter d'autres champs pour aligner le texte du bon côté.

Dernière modification par Robin (Fri 22 February 2019 07:17)

Hors ligne

 

#8 Fri 22 February 2019 09:17

haubourg
Participant assidu
Lieu: Grenoble
Date d'inscription: 7 Sep 2005
Messages: 257
Site web

Re: QGIS vers DXF: ''annotation de texte''

Robin a écrit:

Pour créer le connecteur sur une couche de polygones, utiliser style > générateur de géométrie :
[...]Dans QGIS 2, il faut passer par easycustomlabelling


En fait ce n'est pas obligé d'utiliser ce plugin (je suis pas fan)  ! On peut faire le même genre de formules. Il suffit de créer des champs X_ETIKT et Y_ETIKT (par exemple) et de définir l'emplacement de l'étiquette dans les propriétés de la couche.

Puis tu crée ton connecteur avec une formule très similaire :

Code:

make_line(centroid($geometry), make_point("X_ETIKT","Y_ETIKT"))

Le truc pour que le connecteur ne croise pas le texte quand on le déplace, c'est qu'il faut éventuellement rajouter d'autres champs pour aligner le texte du bon côté.


Je me permets de rebondir sur le sujet des connecteurs qui me tient à cœur, étant l'auteur du plugin EasyCustomLabeling.
Tout d'abord, je n'en suis pas fan non plus, c'est mon vilain premier plugin qui m'a servi à comprendre l'API QGIS de l'époque, et c'était du temporaire en attendant mieux.

Sauf que voilà, dans l'open Source, attendre ne sert à rien. Si on a un besoin, on a tout ce qu'il faut pour faire changer les choses. Une DO-Ocratie ils appellent ça en anglais. Si personne ne le fait et que vous en avez besoin, FAITES le.

Ironie du sort, j'ai quitté mes fonctions de financeur juste avant de pouvoir lancer le marché qui aurait intégré dans QGIS les connecteurs d'étiquettes nativement. Mais on avait, en coordination avec le ministère de l'écologie (un grand merci à AlainF au passage) financé les briques sous jacentes nécessaires, à savoir les jointures éditables et le stockage auxiliaire. Et c'était bien ça le plus compliqué à faire ceci dit en passant.

Tout ça pour dire que je reste toujours surpris que nous géomaticiens débrouillard ou experts passions autant de temps à contourner ou bricoler pour arriver à nos fins, mais que si peu d'entre nous décident de changer les choses pour que les utilisateurs débutants ou juste pressés puisse faire leur carte simplement.

La réalisation de connecteurs d'étiquettes reste quand même une fonctionnalité de base d'un SIG qui DOIT être dans QGIS, je pense qu'il ne doit pas y avoir de débat.

Et en plus, les spécifications sont techniquement déjà rédigées et acceptées dans les  demandes d'amélioration QGIS, les fameuses QEP.

Je vous les remets là si jamais cela déclenchait une vocation:

https://github.com/qgis/QGIS-Enhancemen … /issues/47
https://github.com/qgis/QGIS-Enhancemen … /issues/46
https://github.com/qgis/QGIS-Enhancemen … /issues/48
https://github.com/qgis/QGIS-Enhancemen … /issues/49
https://github.com/qgis/QGIS-Enhancemen … /issues/62

Et pour finir, de toutes les variétés de gouvernance open Source existante, QGIS est vraiment la plus ouverte et accueillante que je connaisse, il serait dommage de ne pas saisir l'opportunité! (attention, on peut y prendre goût)

Régis

Hors ligne

 

#9 Fri 22 February 2019 15:54

jiptwo19
Participant actif
Lieu: drummondville, québec
Date d'inscription: 3 Jan 2019
Messages: 56

Re: QGIS vers DXF: ''annotation de texte''

Yeser sa fonctionné!

J'ai même trouvé comment mettre mon texte en dessous dans mon champs Desc.
Multi-line

Bref merci a vous ..
il me reste juste a testé en transférant le tout en Autocad

Merci!

Dernière modification par jiptwo19 (Fri 22 February 2019 16:28)

Hors ligne

 

Pied de page des forums

Powered by FluxBB