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é ?

#1 Sun 21 March 2021 10:41

Romary
Participant assidu
Lieu: Epinal
Date d'inscription: 17 Jun 2011
Messages: 211

[Postgresql 9.3] importe fichier GPS surfacique linéaire ou ponctuel

Bonjour,j'aimerais pouvoir remonter dans une variable l'information du type de géométrie d'un fichier shape ou kml avant de l'importer dans postgresql postgis dans une table import surfacique ou linéaire ou ponctuel en fonction de la valeur de la variable.j'utilise ogr2ogr pour l'import.

Cordialement.

Romary

Dernière modification par Romary (Sun 21 March 2021 10:42)

Hors ligne

 

#2 Mon 22 March 2021 09:57

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

Re: [Postgresql 9.3] importe fichier GPS surfacique linéaire ou ponctuel

Bonjour,

Vous pouvez utiliser ogrinfo pour connaitre le type de la géométrie d'une couche (le KML pouvant avoir plusieurs types géométriques dans le meme fichier).

S'il s'agit de nommer les tables suivant le type, vous pouvez aussi charger le fichier dans une table, regarder dans la vue geometry_columns le type geo de cette table (s'il y a plusieurs types geo dans la table, le type postgis sera GEOMETRY) et renommer la table en fonction de cette valeur.

Ca se fait facilement en SQL apres le chargement de la couche (ogr2ogr a une option post_sql il me semble, pour faire ce genre de choses)

Nicolas

Hors ligne

 

#3 Mon 22 March 2021 10:09

Romary
Participant assidu
Lieu: Epinal
Date d'inscription: 17 Jun 2011
Messages: 211

Re: [Postgresql 9.3] importe fichier GPS surfacique linéaire ou ponctuel

Merci pour la réponse.
Du coup je ne sais pas si je suis au bon endroit. Mais je voudrais récupèrer cette info dans une variable mais j'ai plein de texte de méta-données qui remonte. Comment extraire juste le type de géométrie?

Hors ligne

 

#4 Mon 22 March 2021 12:15

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

Re: [Postgresql 9.3] importe fichier GPS surfacique linéaire ou ponctuel

Vous pouvez utiliser une regexp avec perl ou grep pour extraire le type de géométrie, par ex (ex pris sur stackoverflow):

Code:

geotype=$(ogrinfo -al -so leisure.shp | perl -ne 'print "$1\n" if /Geometry: (.*)/')
echo ${geotype}

Polygon

Nicolas

Hors ligne

 

Pied de page des forums

Powered by FluxBB