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

Printemps des cartes 2024

#1 Mon 10 May 2010 00:39

Syphys
Participant occasionnel
Date d'inscription: 10 May 2010
Messages: 15

Unité distance postgis

Bonjour,

J'ai une base de donnée postgis contenant les villes de France mais je n'arrive pas à comprendre en quelle unité sont retournés les résultats sad

J'ai utilisé le srid 2154 pour mettre mes données que j'ai pris à cette adresse : http://download.geofabrik.de/osm/europe/france/

quand je fais une requéte style

select distinct distance((select the_geom from villes v where v.name = 'Strasbourg' and type= 'city'),(select the_geom from villes v where v.name = 'Brest' and v.type= 'city')) from villes;

j'obtiens :
12.2371737413677

Si je fais des essaies avec plein de distance inter-ville je vois une correspondance dans l'ordre de grandeur mais ce n'est pas proportionnel.

Je vous remercie ne-serait-que pour l'espoir que l'attente d'une réponse me procure... Je sais je suis mélodramatique smile quoique... :'s

Hors ligne

 

#2 Mon 10 May 2010 01:13

Guillaume Sueur
Participant assidu
Lieu: Toulouse
Date d'inscription: 23 Sep 2005
Messages: 331
Site web

Re: Unité distance postgis

Bonsoir,

Les données doivent être en WGS84, EPSG:4326, car cette distance Brest - Strasbourg ressemble à des degrés décimaux ! Essayez :
UPDATE villes SET the_geom = ST_Transform(ST_SetSRID(the_geom,4326),2154);
et refaites vos calculs de distance.

Guillaume

Hors ligne

 

#3 Mon 10 May 2010 07:50

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

Re: Unité distance postgis

Bonjour,

J'ai déplacé ce sujet sur Postgis sur le forum Géo'BD

Sylvie, pour la modération

Hors ligne

 

#4 Mon 10 May 2010 09:29

Syphys
Participant occasionnel
Date d'inscription: 10 May 2010
Messages: 15

Re: Unité distance postgis

C' est super ça marche!!!!!

Merci beaucoup!

Hors ligne

 

#5 Mon 10 May 2010 09:52

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1537

Re: Unité distance postgis

Syphys a écrit:

Bonjour,

J'ai une base de donnée postgis contenant les villes de France mais je n'arrive pas à comprendre en quelle unité sont retournés les résultats sad

J'ai utilisé le srid 2154 pour mettre mes données que j'ai pris à cette adresse : http://download.geofabrik.de/osm/europe/france/

quand je fais une requéte style

select distinct distance((select the_geom from villes v where v.name = 'Strasbourg' and type= 'city'),(select the_geom from villes v where v.name = 'Brest' and v.type= 'city')) from villes;

j'obtiens :
12.2371737413677

Si je fais des essaies avec plein de distance inter-ville je vois une correspondance dans l'ordre de grandeur mais ce n'est pas proportionnel.

Je vous remercie ne-serait-que pour l'espoir que l'attente d'une réponse me procure... Je sais je suis mélodramatique smile quoique... :'s


Bonjour,

Postgis fait les calculs dans les unités des données.

Nico

Hors ligne

 

#6 Mon 10 May 2010 10:53

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

Re: Unité distance postgis

Nicolas Ribot a écrit:
Syphys a écrit:

Bonjour,

J'ai une base de donnée postgis contenant les villes de France mais je n'arrive pas à comprendre en quelle unité sont retournés les résultats sad

J'ai utilisé le srid 2154 pour mettre mes données que j'ai pris à cette adresse : http://download.geofabrik.de/osm/europe/france/

quand je fais une requéte style

select distinct distance((select the_geom from villes v where v.name = 'Strasbourg' and type= 'city'),(select the_geom from villes v where v.name = 'Brest' and v.type= 'city')) from villes;

j'obtiens :
12.2371737413677

Si je fais des essaies avec plein de distance inter-ville je vois une correspondance dans l'ordre de grandeur mais ce n'est pas proportionnel.

Je vous remercie ne-serait-que pour l'espoir que l'attente d'une réponse me procure... Je sais je suis mélodramatique smile quoique... :'s


Bonjour,

Postgis fait les calculs dans les unités des données.

Nico


Je dirais même plus : dans les unités de la projection wink

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 Mon 10 May 2010 11:23

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1537

Re: Unité distance postgis

Yves a écrit:
Nicolas Ribot a écrit:
Syphys a écrit:

Bonjour,

J'ai une base de donnée postgis contenant les villes de France mais je n'arrive pas à comprendre en quelle unité sont retournés les résultats sad

J'ai utilisé le srid 2154 pour mettre mes données que j'ai pris à cette adresse : http://download.geofabrik.de/osm/europe/france/

quand je fais une requéte style

select distinct distance((select the_geom from villes v where v.name = 'Strasbourg' and type= 'city'),(select the_geom from villes v where v.name = 'Brest' and v.type= 'city')) from villes;

j'obtiens :
12.2371737413677

Si je fais des essaies avec plein de distance inter-ville je vois une correspondance dans l'ordre de grandeur mais ce n'est pas proportionnel.

Je vous remercie ne-serait-que pour l'espoir que l'attente d'une réponse me procure... Je sais je suis mélodramatique smile quoique... :'s


Bonjour,

Postgis fait les calculs dans les unités des données.

Nico


Je dirais même plus : dans les unités de la projection wink

Y.


Non, pas tout a fait: si une colonne geometrique contient des données metriques, (disons lambert 2), mais que lors de l'import un mauvais SRID a ete affecté a ses données (disons WGS84), le calcul se fera bien en metres. Autrement dit, postgis ne tient pas compte du SRID de la geometries pour connaitres les unités de calcul.
Au detail pres du nouveau type GEOGRAPHY, qui "sait" que les données sont dans un systeme spherique, avec un modele particulier de calcul, a condition qu'un SRID geodétique soit associé.

C'est a l'utilisateur de garantir que le SRID associé a des données soit valide et corresponde aux données.
Il faut donc y faire attention au moment de l'import de données dans postgis.


Nico

Hors ligne

 

#8 Mon 10 May 2010 16:10

Syphys
Participant occasionnel
Date d'inscription: 10 May 2010
Messages: 15

Re: Unité distance postgis

Toutes les questions que je me posais smile

Par contre je me demande comment on fait pour savoir le srid  avec lequel on doit importer les données?

Dernière modification par Syphys (Mon 10 May 2010 16:12)

Hors ligne

 

#9 Mon 10 May 2010 16:20

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

Re: Unité distance postgis

Merci Nico, ma précision a pour origine la doc de postgis qui effectivement doit supposer que les données sont dans le srid correcte.

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

 

#10 Mon 10 May 2010 16:33

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1537

Re: Unité distance postgis

Syphys a écrit:

Toutes les questions que je me posais smile

Par contre je me demande comment on fait pour savoir le srid  avec lequel on doit importer les données?


Le fournisseur du shape DOIT avoir livré des metadonnées décrivant ledit shape (projection entr'autre)
Si un fichier .prj est present, il contient le WKT de la projection du shapefile.

Si aucune info n'est presente, associée au shape, alors ce n'est pas facile: données d'un pays => essayer les projections du pays, eventuellement en superposant des données dont on connait la projection.

Les coordonnées peuvent aider (metrique, lat-long ?)

Mais bon, faut vraiment gronder celui qui produit le shape s'il n'a pas les info de projections associées.

Nico

Hors ligne

 

#11 Mon 10 May 2010 16:52

Syphys
Participant occasionnel
Date d'inscription: 10 May 2010
Messages: 15

Re: Unité distance postgis

:$ :$ :$

C'est moi qui savait pas où regarder je voyais bien les autres fichiers autour mais je savais pas à quoi ils servaient :s

Hors ligne

 

#12 Mon 10 May 2010 17:01

Syphys
Participant occasionnel
Date d'inscription: 10 May 2010
Messages: 15

Re: Unité distance postgis

Comme vous avez l'air bien au courant de tout ça, je me permet de vous poser une question sans avoir vraiment regardé (parce que je sais pas trop où chercher...)

Savez-vous comment je peux entrer dans ma base des points dont j'ai la longitude et la latitude?

J'en aurais besoin plus tard mais ça me turlupine déjà...


Bon avec un tout petit peu de recherche il semble que j'ai trouvé ça ici:

http://www.postgis.fr/node/351


Merci encore de m'avoir débloqué et pour les explications smile

Dernière modification par Syphys (Mon 10 May 2010 17:10)

Hors ligne

 

#13 Mon 10 May 2010 17:43

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1537

Re: Unité distance postgis

Syphys a écrit:

Comme vous avez l'air bien au courant de tout ça, je me permet de vous poser une question sans avoir vraiment regardé (parce que je sais pas trop où chercher...)

Savez-vous comment je peux entrer dans ma base des points dont j'ai la longitude et la latitude?

J'en aurais besoin plus tard mais ça me turlupine déjà...


Bon avec un tout petit peu de recherche il semble que j'ai trouvé ça ici:

http://www.postgis.fr/node/351


Merci encore de m'avoir débloqué et pour les explications smile


smile
De rien

L'ideal pour la fabrication de POINT postgis a partir de colonnes lat long est d'utiliser makePoint(x, y):

update matable set macolonnegeo = setSrid(st_makepoint(colLongitude, colLatitude), <le srid de ma colonne>);

Plus rapide et plus sur que la concatenation de string.

Nicolas

Hors ligne

 

Pied de page des forums

Powered by FluxBB