#1 Sun 28 September 2014 18:56
- Thomas Williamson
- Participant actif
- Lieu: Poitiers
- Date d'inscription: 16 Nov 2008
- Messages: 92
QGIS 2.2 : plugin « Vector Affine Transformation »
Bonjour,
Je dispose d'une polyligne fermée qui provient d'un fichier DXF dessiné en coordonnées locales. J'ai ouvert le DXF dans QGIS sans reprojection à la volée, sélectionné l'objet souhaité et je l'ai enregistré au format shape. J'ai ensuite ouvert ce shape dans QGIS, toujours sans reprojection à la volée.
J'ai pris un point sur la polyligne (un sommet) et j'ai noté ses coordonnées : 424500.86 235320.92.
J'ai repéré le point correspondant sur un fond en Lambert 93 et j'ai noté ses coordonnés : 474344.02 6670274.76.
Je cherche maintenant à opérer une translation (pas de déformation) des coordonnées de départ vers les coordonnées souhaitées. Je ne comprends pas comment renseigner le plugin en question pour qu'il réalise cette transformation. Ma logique est la suivante (cf. copie d'écran en pièce jointe) :
Code:
> X arrivée - X départ = 49843.16 > Y arrivée - Y départ = 6434953.84 > X' = 1,000 x + 49843.16 y + 0,000 > Y' = 0,000 x + 0.000 y + 6434953.84
Une translation s'opère bien mais pas du tout à l'endroit souhaité...
J'ai testé avec un shape créé pour l'occasion, en essayant de déplacer un point de 10 mètres en X et en Y (Lambert 93) :
Code:
> X' = 1,000 x + 10.000 y + 0,000 > Y' = 0,000 x + 0.000 y + 10.000
Le point est déplacé seulement en X de plus de 60 000 km !
Merci par avance pour votre aide !
Thomas
Hors ligne
#2 Mon 29 September 2014 03:15
- Leyan
- Participant assidu
- Date d'inscription: 14 Oct 2013
- Messages: 160
Re: QGIS 2.2 : plugin « Vector Affine Transformation »
Ton équation n'est pas bonne. L'équation de la transformation est de la forme
Code:
x' = ax + by + c y' = dx + ey + f
Pour une simple translation, tu veux x' = x + 10 et y' = y + 10, donc tu dois choisir quelque chose comme :
Code:
x' = 1*x + 0*y + 10 y' = 0*x + 1*y + 10
Ces deux équations permettent n'importe quelle transformation affine, donc non seulement une translation, mais aussi un agrandissement/réduction (en choisissant les coefficients a et e pour obtenir des équations comme x' = 2*x, y' = 2*y), des rotations, ou des combinaisons de ces différentes transformations.
Dernière modification par Leyan (Mon 29 September 2014 03:18)
Hors ligne
#3 Mon 29 September 2014 08:44
- Thomas Williamson
- Participant actif
- Lieu: Poitiers
- Date d'inscription: 16 Nov 2008
- Messages: 92
Re: QGIS 2.2 : plugin « Vector Affine Transformation »
Merci beaucoup ! J'essaie ce soir et je poste une fois l'équation corrigée pour dire ce qu'il en est.
Thomas
Hors ligne
#4 Mon 29 September 2014 17:28
- yopyop25
- Participant actif
- Lieu: besançon
- Date d'inscription: 2 Jun 2008
- Messages: 144
Re: QGIS 2.2 : plugin « Vector Affine Transformation »
Bonjour,
Il existe un plug-in expérimental pour géoréférencer un vecteur : Vector Bender.
Il faut charger le fichier vecteur non géoréférencé, charger un fond de référence.
Ensuite activer l'outil Vector bender
Choisir la couche à référencer et mettre en modification cette couche (icone crayon) - du coup les dxf sont à enregistrer en shp avant
Choisir la couche d'appariement (couche de ligne point de départ, point d'arrivée) ou activer la création à la volée des pairs et mettre en modification cette couche.
Puis faire Run et le fichier vecteur se cale tout seul !
Yohan
Hors ligne
#5 Mon 29 September 2014 21:38
- Thomas Williamson
- Participant actif
- Lieu: Poitiers
- Date d'inscription: 16 Nov 2008
- Messages: 92
Re: QGIS 2.2 : plugin « Vector Affine Transformation »
Bonsoir,
Pour la méthode de Leyan : je viens de tester mais j'obtiens exactement le même résultat... J'ai une couche test.shp calée en Lambert 93 avec deux points superposés. Je sélectionne l'un des points et j'active le plugin « Vector Affine Transformation ». J'entre la formule suivante pour la couche test et l'objet sélectionné :
Code:
x' = 1*x + 0*y + 10 y' = 0*x + 1*y + 10
Mon point est déplacé de plus de 66000 km sans suivre une translation équivalente en X et en Y puisqu'il bouge au sud-est du point de référence (cf. image en pièce jointe, le point de départ est à gauche et le point transformé à droite).
What's wrong ? Je ne comprends pas bien...
Merci encore pour vos avis sur le sujet !
Thomas
Hors ligne
#6 Mon 29 September 2014 21:41
- Thomas Williamson
- Participant actif
- Lieu: Poitiers
- Date d'inscription: 16 Nov 2008
- Messages: 92
Re: QGIS 2.2 : plugin « Vector Affine Transformation »
Je viens de re-tester en activant la re-projection à la volée, et ça marche... Une explication ?
Thomas
Hors ligne