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 Thu 12 April 2012 16:52

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

probleme modif geometry projection

bonjour,

ma table "matable" contient la colonne "the_geom" de type geometry

je veux changer les objets géométriques en leur redéfinissant leur epsg:

Code:

update matable set the_geom=transform(the_geom,4326)

la requête semble marcher mais quand je fais "select astext(the_geom) from matable", les coordonnées affichées ne sont pas du tout celles du wgs84. Quelle est la fonction qui permet de reprojeter la géométrie?


Merci d'avance

Hors ligne

 

#2 Thu 12 April 2012 18:59

cedricd
Participant occasionnel
Lieu: Dijon
Date d'inscription: 20 Mar 2006
Messages: 19

Re: probleme modif geometry projection

Bonsoir,

- Vos géométries initiales possèdent elles bien un code EPSG associé ? Vérifier avec :

Code:

SELECT ST_Srid(the_geom) FROM matable;

- Ce dernier est il cohérent avec les coordonnées des géometries. Si ce n'est pas le cas :

Code:

UPDATE matable SET the_geom = ST_SetSrid(the_geom, votre_epsg_coherent);

Normalement, si votre installation de Postgis est bien faite (Proj4, table spatial_ref_sys,etc.), une reprojection devrait effectivement être réalisée
Vous pouvez tenter de réaliser l'opération en une seule commande :

Code:

UPDATE matable SET the_geom = ST_Transform(ST_SetSrid(the_geom, votre_epsg_coherent),votre_nouvel_epsg);

Sinon... il faut chercher ailleurs.

Cordialement

Hors ligne

 

#3 Fri 13 April 2012 10:05

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: probleme modif geometry projection

il me semble que c'est du epsg 900913. Est-ce que cette projection est prise en charge par défaut par POSTGIS?

Hors ligne

 

#4 Mon 16 April 2012 13:48

cedricd
Participant occasionnel
Lieu: Dijon
Date d'inscription: 20 Mar 2006
Messages: 19

Re: probleme modif geometry projection

Bonjour,

Par défaut, après installation de PostGis, le système référencé sous le code 900913 n'est pas présent. La désignation officielle de ce système est le code EPSG 3857. Ce dernier existe bien dans la table spatial_ref_sys. Vous pouvez vous en assurer en exécutant la requête suivante :

Code:

SELECT * FROM spatial_ref_sys WHERE auth_srid=3857;

Si vos coordonnées sont bien dans ce système vous pouvez donc reprojeter vos données via l'instruction:

Code:

UPDATE matable SET the_geom = ST_Transform(ST_SetSrid(the_geom,3857),4326);

Cordialement

Hors ligne

 

#5 Fri 27 July 2012 14:23

maria1000
Participant actif
Date d'inscription: 11 Feb 2009
Messages: 54

Re: probleme modif geometry projection

Bonjour,

J'essaie de convertir la projection d'un point de WGS84 vers EPSG:2154 :

Les coordonnées Latidude et Longitude du point sont  (45.768155 4.8969368). Il s'agit d'un point à l'adresse
"293 rue Francis de Pressensé    69100    VILLEURBANNE    FRANCE"

WGS84 correspond à EPSG:4326.

La reqûete suivante

select AsText(ST_Transform(GeometryFromText('POINT(45.768155 4.8969368)',4326),2154))

donne comme résultat :

"POINT(6397224.29722676 3186161.47248742)" en projection EPSG:2154.

Ce résultat est faux,
car le centroid de VILLEURBANNE correspond à :

"POINT(846801.187132007 6520783.2870498)"


Est-ce que qqn a une explication?

Hors ligne

 

#6 Fri 27 July 2012 14:30

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: probleme modif geometry projection

hummmm


georezo=# select AsText(ST_Transform(GeometryFromText('POINT(4.8969368 45.768155)',4326),2154));
                  astext                 
------------------------------------------
POINT(847413.867240583 6520498.13534094)
(1 ligne)


Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#7 Fri 27 July 2012 14:45

maria1000
Participant actif
Date d'inscription: 11 Feb 2009
Messages: 54

Re: probleme modif geometry projection

Le propblème a été résolu!

Il faut juste interchanger les positions de la Longitude et la Latitude :

select AsText(ST_Transform(GeometryFromText('POINT(4.8969368 45.768155)',4326),2154))

donne le bon résultat :

"POINT(847413.867240583 6520498.13534094)"

Hors ligne

 

Pied de page des forums

Powered by FluxBB