#1 Wed 23 April 2014 14:53
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: 3895
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
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
"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: 3895
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
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: 3895
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
Hors ligne
#7 Fri 25 April 2014 13:35
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
#10 Mon 28 April 2014 15:04
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3895
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é 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