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

#1 Mon 20 June 2011 16:08

sylpingus
Participant occasionnel
Lieu: Aix en Provence
Date d'inscription: 9 Jan 2006
Messages: 34

[GDAL/OGR] Forcer et/ou conserver l’arrondi des coordonnées

[GDAL/OGR] Forcer etou conserver l’ arrondi des coordonnées

Bonjour,

Je me pose une question sur la fonction ogr2ogr (idem pour gdalwarp et gdal_translate d’ailleurs) et la gestion des arrondis sur les coordonnées. Si certains d’entre vous ont des éléments de réponse, je suis bien entendu preneur car je n’ai pas trouvé de réponse.

Je m’explique :

Certaines bases de données (IGN notamment) présentent des coordonnées arrondies au mètre (BD CARTO par exemple) ou au décimètre (BD TOPO par exemple).

Je vais me baser sur les coordonnées d’un point de la BD CARTO pour étayer mes propos :

Dans un shape d’origine en L93, un point donné à pour coordonnées (fournies par ogrinfo) :

X = 993366 Y = 6304044

On importe ce point dans PostGIS avec shp2pgsql, et ce même point a toujours pour coordonnées :

X = 993366 Y = 6304044

Jusqu’ici tout va bien !

Si on cherche à exporter cette couche PostGIS via ogr2ogr (en shape, tab, ou mif/mid), un ogrinfo nous donne, sur le même point de la couche exportée résultante, les coordonnées suivantes :

X = 993366.00000000058 et Y = 6304043.9999999898)

Cela signifie que ogr2ogr (tests identiques effectués sur l’emprise d’un dalle raster avec reprojection (gdalwarp) ou sans (gdal_translate)) modifie le nombre de décimale des coordonnées d’origine, ce qui peut s’avérer gênant dans certains cas de figure où on peut avoir le besoin de récupérer une donnée en sortie avec le même nombre de décimales qu’en entrée.

J’ai essayé de trouver un paramètre pour forcer ogr2ogr (ou gdal et fonctions associées) à arrondir les coordonnées à un nombre de décimales donné (comme on peut le faire avec cs2cs) et je n’ai pas trouvé… D’où mes questions :

Est-ce possible de paramétrer le nombre de décimales en sortie (voire idéalement conserver le même qu’en entrée). Et si oui, comment ?

Un grand merci par avance à tous ceux qui auraient de bonnes idées et/ou indications à suivre.

Hors ligne

 

Pied de page des forums

Powered by FluxBB