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 23 April 2014 14:53

pasqal
Participant occasionnel
Date d'inscription: 10 Dec 2011
Messages: 34
Site web

QGIS 2.2 : décalage symbologie

Bonjour,

J'ai un souci sans doute tout bête mais je tourne en rond.

Je voudrais décaler le symbole d'ellipse pour l'ancrer sur le coté. cf. image http://1drv.ms/1lErGUp
j'ai donc largeur = L_OBJ_R et hauteur = H_OBJ_R, ça c'est OK.

Mais
Le point d'ancrage ne fonctionne pas, en tout cas le gauche,droite ne colle pas le point sur le bord.

Du coup, j'essaye de créer un décalage X,Y sur la moitié de la longueur mais y'a rien qui marche.
des trucs dans les expressions (sources de définition des propriétés) comme :

L_OBJ_R / 2
ou
L_OBJ_R / 2 , 0
ou
toreal(L_OBJ_R / 2) || ',0.0'
etc

ne fonctionne pas

Une idée ?
Merci de votre aide


"Ce qui ne me passionne pas, m'ennuie" S.Guitry

Hors ligne

 

#2 Wed 23 April 2014 16:56

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

Re: QGIS 2.2 : décalage symbologie

Bonjour,
Tout d'abord, sur quel type d'entités sommes-nous? Polygone ou Point?

Autant sur un ponctuel, utiliser deux symboles, un rectangle en symbole simple et une ellipse en symbole d'ellipse, ellipse avec point d'ancrage au centre et décalée de la moitié de la largeur du rectangle solutionne l'affaire, autant avec un polygone, ça semble être une autre paire de manche.

Sur un polygone, il ne faut pas oublier que le rectangle correspondrait alors au pourtour du polygone, donc, sauf situation très particulière de rectangles identiques comme entités, jouer avec des distances de décalage ne permettrait pas à mon avis d'obtenir ce que vous voulez. Mettre un rectangle en remplissage simple et l'ellipse en "Bordure: ligne de symboles" ne semble pas non plus vraiment répondre à la représentation que vous voulez même si ça s'en approche. A tester?
Pas d'autre idée...

Hors ligne

 

#3 Thu 24 April 2014 11:04

pasqal
Participant occasionnel
Date d'inscription: 10 Dec 2011
Messages: 34
Site web

Re: QGIS 2.2 : décalage symbologie

bonjour,

Merci pour la réponse,

Oui, je suis bien en ponctuel, sinon je n'utiliserai pas le symbole d'ellipse.

Mon principal problème est que je n'arrive pas à saisir une expression qui marche dans le décalage X,Y.
Je me demande si cela ne vient pas de la virgule entre les coordonnées qui doit être interprété comme faisant parti du nombre et pas comme une séparation.

bug QGIS ou bug utilisateur (càd moi) ?


merci de votre aide


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

"Ce qui ne me passionne pas, m'ennuie" S.Guitry

Hors ligne

 

#4 Thu 24 April 2014 12:45

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

Re: QGIS 2.2 : décalage symbologie

Bonjour,

les rectangles roses, que représentent-ils? Ils font partie de la symbologie de l'entité point ou ce sont des polygones sous-jacents (ce qui expliquerait pourquoi ils ont des dimensions différentes, notamment un grand et deux petits)?

Si ce sont d'autres entités, polygones, la question revient à gérer la superposition du symbole point avec du polygone et donc gérer la question de la taille de chaque polygone, soulevée plus haut. Ça n'est, à mon avis, pas impossible, pour autant que vous récupériez l'angle d'orientation et la longueur de chaque rectangle (en espérant que la couche polygone ne contienne que des géométries simples de ce genre).

Sur les remarques contenues dans le fichier joint:
- le point d'ancrage représente le centroide du point, en gros si vous aviez choisi une représentation avec un simple symbole point, il aurait été mis là. Du coup, les options servent à dire, lorsque vous choisissez un figuré différent, si vous voulez que le centre de celui-ci soit au centre ou plutôt que ce soit son côté droit, gauche, haut ou bas... qui corresponde au coordonnées (du centroïde) du point. Essayez avec un figuré plus complexe et des dimensions plus grandes, vous verrez nettement la différence entre les différentes options.
- Le décalage décale votre point d'ancrage d'autant de distance qu'indiqué, et selon la direction retenue. Si le rectangle rose a différentes dimensions, ça ne tombera pas toujours à l'endroit voulu, sauf à utiliser les expressions. Normal, donc!
- et pour les expressions, le champ décalage attend du string ('<x>,<y>') en bout de chaîne, mais avec deux parties numériques de part et d'autre de la virgule. L'expression toreal(L_OBJ_R / 2) || ',0.0' (indiquée dans votre premier message) devrait donc produire un certain effet contrairement aux deux autres formules, si L_OBJ_R dans la table point renvoie bien du numérique.

Hors ligne

 

#5 Fri 25 April 2014 12:12

pasqal
Participant occasionnel
Date d'inscription: 10 Dec 2011
Messages: 34
Site web

Re: QGIS 2.2 : décalage symbologie

les rectangles roses sont bien ma symbologie, j'ai mis les croix noires pour «voir» les centroïdes. Sur les captures, je n'ai qu'une couche en ponctuel.

Pour l'ancrage, le bas, ou haut colle bien le centroïde sur le bord du symbole , enfin l'inverse je veux dire, colle bien le symbole sur le bord haut ou bas du centro. mais le gauche, droite ne le colle pas au bord.

Pour le décalage avec expression, j'ai essayé tout (et n'importe quoi) et rien. le toreal(L_OBJ_R / 2) || ',0.0' cité ne donne rien non plus.

C'est franchement désespérant, surtout que c'est une manœuvre simple, je suis sûr que d'autre ont eu le souci, j'aimerais savoir comment il l'ont résolu.

merci pour vos réponses


"Ce qui ne me passionne pas, m'ennuie" S.Guitry

Hors ligne

 

#6 Fri 25 April 2014 12:55

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

Re: QGIS 2.2 : décalage symbologie

Sur les captures, je n'ai qu'une couche en ponctuel


C'est normal donc que les tailles des rectangles roses ne soient pas identiques? et sur ces captures, c'est le rectangle que vous essayez de bouger ou les points?
Que représente le champ L_OBJ_R?
Ci-après une représentation que j'ai faite et qui marche chez moi:
Le point rouge est au centroïde même de l'objet,
le cadre vert de 20cm de coté est un simple objet posé sans décalage;
les paramètres de l'ellipse qui subit un décalage sont indiqués dans l'image. Et pour tous les objets, le bas de l'ellipse est aligné sur l'horizontale qui passe par le point rouge et le coté gauche de l'ellipse est aligné avec le coté droit du rectangle.
Pas besoin d'utiliser les expressions vu que je veux une représentation à l'identique.
Regardez si ça vous inspire et si ça correspond au genre de trucs que vous souhaitez faire


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

Hors ligne

 

#7 Fri 25 April 2014 13:35

pasqal
Participant occasionnel
Date d'inscription: 10 Dec 2011
Messages: 34
Site web

Re: QGIS 2.2 : décalage symbologie

merci de vous pencher sur mon souci.
En fait,
mon symbole d'ellipse doit avoir les dimensions donné dans la table attributaire
ou
A_OBJ_D (REAL) = angle en degree
L_OBJ_R (REAL)= largeur
H_OBJ_R (REAL) = hauteur

TYPFILTE    A_OBJ_D    L_OBJ_R    H_OBJ_R
FAS                177.313    4    5
tr.                150.116    12.5    5
FAS                    189.696     5    7
ter                273.471    7    7

Donc mes longueurs, hauteurs de symbole ne sont pas fixes. et je ne peux pas utiliser un symbole simple.
Je veux juste que mon symbole soit ancré sur le coté et pas au milieu.

merci encore


"Ce qui ne me passionne pas, m'ennuie" S.Guitry

Hors ligne

 

#8 Mon 28 April 2014 03:57

Leyan
Participant assidu
Date d'inscription: 14 Oct 2013
Messages: 160

Re: QGIS 2.2 : décalage symbologie

Idéalement, il suffirait de choisir le point d'ancrage. Le problème, c'est que la position de ce point d'ancrage est calculée avant d'appliquer les transformations à l'ellipse, ce qui ne donne pas le résultat attendu.

En théorie cela devrait être possible de le faire manuellement, mais j'ai l'impression qu'il y a un autre bug qui empêche d'utiliser un décalage avec expression si le symbole utilisé est ellipse. J'ai pu décaler le point sur le côté de l'ellipse avec une expression comme:
"concat(cos(angle * 3.14 / 180) * larg / 2, ',', sin(angle * 3.14 / 180) * larg / 2)"

Par contre, pas moyen de décaler l'ellipse elle-même ...

Si vos données ne changent pas trop, peut-être le mieux est de générer une couche de points avec les coordonnées après décalage, puis de se servir de cette couche pour la symbologie ? Bien sûr, dans ce cas on perd le côté dynamique ...

Sinon, je te conseille de décrire les bugs sur http://hub.qgis.org/projects/quantum-gis/issues . Ce sont des bugs faciles à corriger, ils sont probablement encore là car peu d'utilisateurs utilisent ces fonctionnalités.

Dernière modification par Leyan (Mon 28 April 2014 04:10)

Hors ligne

 

#9 Mon 28 April 2014 10:28

pasqal
Participant occasionnel
Date d'inscription: 10 Dec 2011
Messages: 34
Site web

Re: QGIS 2.2 : décalage symbologie

ok, je vais poster le bug

merci de votre aide

Dernière modification par pasqal (Mon 28 April 2014 10:29)


"Ce qui ne me passionne pas, m'ennuie" S.Guitry

Hors ligne

 

#10 Mon 28 April 2014 15:04

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

Re: QGIS 2.2 : décalage symbologie

Effectivement, décaler les expressions avec une ellipse ne donne rien alors que ça passe avec un symbole simple. Toutes mes tentatives ont échoué sad et je pense bien que c'est un bug...

Hors ligne

 

#11 Sat 24 May 2014 04:46

Leyan
Participant assidu
Date d'inscription: 14 Oct 2013
Messages: 160

Re: QGIS 2.2 : décalage symbologie

On dirait que le problème a été réglé : http://hub.qgis.org/issues/9579

Hors ligne

 

Pied de page des forums

Powered by FluxBB