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 Thu 30 October 2008 15:40

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Décalage de ligne

Bonjour,

j'ai une couche avec des polylignes,
je souhaiterais décaler chacune d'elles parallèlement à son origine.

Chaque objet possède un attribut contenant la valeur du décalage.

J'ai essayé d'utiliser le transformer Bufferer (avec l'option coté_droit_seulement) mais ce traitement me donne un résultat peu satisfaisant car il déforme certaines des polylignes.

Quelqu'un aurait-il une piste pour les déplacer ou les recréer (mais sans modifier leur géométrie) ?

En esperant avoir été clair ...

Merci d'avance


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#2 Thu 30 October 2008 16:06

Sylvie
Membre
Date d'inscription: 5 Sep 2005
Messages: 3066

Re: Décalage de ligne

Bonjour,

OFFSETTER ...
... en inventant quelque chose pour passer de l'attribut 'valeur du décalage' à DECALAGE X, DECALAGE Y (et DECALAGE Z) qui sont attendus en paramètres

Sylvie

Hors ligne

 

#3 Thu 30 October 2008 16:18

veroh
Participant actif
Lieu: Moutier
Date d'inscription: 27 Sep 2008
Messages: 97
Site web

Re: Décalage de ligne

Bonjour,

Vous pouvez essayer le transformer AFFINER (qui fait une transformation des coordonnées de la ligne) en mettant une valeur de 1 dans A et dans E (pour éviter d'agrandir la ligne de départ) et puis dans C et F une même valeur mais avec un signe opposé.

Véronique Herzl

Hors ligne

 

#4 Fri 31 October 2008 07:33

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: Décalage de ligne

Bonjour,
Voilà ce que je ferai ..
Je prendrais chaque point et je leur affecterais un vecteur de translation. Tout cela pour créer en fait une nouvelle ligne. L'ancienne ligne serait détruite ensuite



Pierre-Yves JOUBERT
Communauté urbaine de Lyon

Hors ligne

 

#5 Fri 31 October 2008 11:27

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Décalage de ligne

Bonjour,
Je me disais bien qu'il fallait utiliser ces méthodes et trouver la formule magique pour calculer les nouveaux coordonnées des vertex de mes lignes.

Mais il y a une chose dont je n'ai pas parler dans mon 1er message et qui ne simplifie pas le problème (bien au contraire). Il faudrait que le décalage se fasse toujours à droite de ma ligne d'origine en fonction de son sens de saisie.

Et la je sèche vraiment car je peux très bien avoir une ligne saisie dans un sens et une autre ligne parallèle à cette dernière mais saisie dans l'autre sens (dans un cas très simple d'une ligne orientée nord, je rajoute + 5 m à mes coordonnées X et pour une ligne orientée sud, je dois rajouter - 5m .... ).
Dans ce cas je ne vois pas du tout comment une simple formule pourrait me permettre de calculer mes nouvelles coordonnées.

Je pense que je vais essayer de persévérer avec le bufferer (qui fait le décalage à droite ou a gauche très bien) en essayant de résoudre les problème de déformation de géométrie provoqué par la création du buffer.

Et merci pour votre aide


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#6 Fri 31 October 2008 12:06

ogayte
Participant assidu
Lieu: Saint-Estève
Date d'inscription: 6 Mar 2006
Messages: 658
Site web

Re: Décalage de ligne

Si vous ne voulez pas de déformation, il faut utiliser offseter.
Pour connaître la valeur du décalage (Dx et Dy) vous pouvez faire la différence entre la première coordonnées de votre ligne d'origine (coordinateFetcher(0)) et la première coordonnées de la ligne généré par Bufferer.
Vous pouvez utiliser FeatureMerger pour récupérer sur un même objet le x_origine, y_origine et x_buffer, y_buffer.


Olivier Gayte
http://www.veremes.com
+33 (0)4-68-38-65-27

Hors ligne

 

#7 Fri 31 October 2008 12:34

pyjoubert
Participant assidu
Lieu: Lyon
Date d'inscription: 21 Mar 2006
Messages: 347

Re: Décalage de ligne

Et qu'est qu'on fait si la ligne ressemble à un "U" ???

Hors ligne

 

#8 Fri 31 October 2008 14:38

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: Décalage de ligne

et pourquoi ne pas analyser l'angle de saisie de la ligne, du vecteur ? pour ensuite obtenir une typologie et faire les décalages en conséquence ?


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#9 Fri 31 October 2008 14:50

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Décalage de ligne

Le problème avec bufferer c'est que l'origine de la ligne générée n'est pas forcement l'origine de la ligne qui  serait décalée et pour certaines polylignes (contenant plus de 2 vertex) j'obtiens vraiment des résultat étranges, je vous ai mis une capture d'écran en pièce jointe.
Sur l'image la ligne originale est en rouge et le bufferer généré avec l'option coté_droit_seulement (ou gauche) est en jaune.

J'ai remarqué que cela arrivait lorsque qu'il y a un vertex proche du vertex de début ou de fin de la ligne (ici il y a quand même 0,5m).

Je vais essayer en supprimant les vertex trop proche sur les lignes pour voir ce que ca peut donner.


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

Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

#10 Fri 07 November 2008 16:15

xav
Participant assidu
Date d'inscription: 27 Oct 2005
Messages: 280

Re: Décalage de ligne

Bonjour,

pour info , j'ai relancé mon traitement avec FME 2009 (dernière version), et je n'ai plus les problèmes sur les buffer que j'ai décrit dans le message précédent.


Xavier Lang
Information géographique et observatoire - DSI Communautaire
Cap Atlantique

Hors ligne

 

Pied de page des forums

Powered by FluxBB