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 Tue 02 February 2021 11:51

Ricola62
Participant assidu
Date d'inscription: 24 Apr 2012
Messages: 166

profil en long pgsql

Bonjour,
J'ai plusieurs cours d'eau linestring 3d que je voudrais transmettre en json via mon API pour afficher des profils en long.
Cette ligne je la décompose en points 3d  avec la fonction st_dumppoints cependant sur certaines lignes je me retrouve avec + de 1000 points!
la solution est elle de simplifier la ligne avec la fonction st_simplify ?
J'ai essayé sauf que pour certaines lignes la fonction me renvoie seulement 2 points (start et end) ...
Si vous avez une quelconque idée ?
merci

Hors ligne

 

#2 Tue 30 March 2021 10:44

tweaxy
Participant actif
Lieu: Abbeville
Date d'inscription: 27 Dec 2018
Messages: 76

Re: profil en long pgsql

Bonjour,

Avez-vous testé ST_Npoints ? Je ne sais pas si sur du Linestring 3D cela fonctionne par contre.

Hors ligne

 

#3 Tue 30 March 2021 12:26

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

Re: profil en long pgsql

Bonjour,

Quelle est la projection de vos données ?
Si st_simplify renvoie peu de points, c'est que la tolérance est trop grande (passée en m alors que les coordonnées sont en long-lat par ex)

Vous avez un exemple de vos données ?

Nicolas

En ligne

 

#4 Thu 15 April 2021 17:08

Ricola62
Participant assidu
Date d'inscription: 24 Apr 2012
Messages: 166

Re: profil en long pgsql

Nicolas Ribot a écrit:

Bonjour,

Quelle est la projection de vos données ?
Si st_simplify renvoie peu de points, c'est que la tolérance est trop grande (passée en m alors que les coordonnées sont en long-lat par ex)

Vous avez un exemple de vos données ?

Nicolas


ma projection est EPSG: 2154
oui et j'ai des lignes de longueur comprises entre 2.5 km et 144 km.
il faudrait dans ce cas faire une fonction avec une variable de tolérance en fonction de la longueur.
par exemple un rapport de 1000 pour 36 km me sort 6 points.
A votre avis?

Dernière modification par Ricola62 (Thu 15 April 2021 17:08)

Hors ligne

 

#5 Fri 16 April 2021 15:04

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

Re: profil en long pgsql

Bonjour,

st_simplify est un peu empirique: a vous de choisir la distance de simplifcation. 1000m c'est énorme en général.

Je vous conseillerais qq métres, en testant plusieurs versions et en comptant le nombre de sommets avant et apres simplification.
Vous devriez trouver une valeur qui convient pour toutes les linestring de votre dataset.

Apres, 1000 pts pour une ligne json, c'est pas choquant. Ca fera des profils précis !

Nicolas

En ligne

 

#6 Mon 19 April 2021 10:58

Ricola62
Participant assidu
Date d'inscription: 24 Apr 2012
Messages: 166

Re: profil en long pgsql

Nicolas Ribot a écrit:

Bonjour,

st_simplify est un peu empirique: a vous de choisir la distance de simplifcation. 1000m c'est énorme en général.

Je vous conseillerais qq métres, en testant plusieurs versions et en comptant le nombre de sommets avant et apres simplification.
Vous devriez trouver une valeur qui convient pour toutes les linestring de votre dataset.

Apres, 1000 pts pour une ligne json, c'est pas choquant. Ca fera des profils précis !

Nicolas


oui autant garder de la précision!
merci bcp

Hors ligne

 

Pied de page des forums

Powered by FluxBB