Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
#1 Fri 22 April 2022 17:42
- didine44
- Juste Inscrit !
- Date d'inscription: 6 Dec 2020
- Messages: 4
problème fonction st Project
Bonjour à tous,
je viens vers vous car j'ai un problème de distance dans postgis via la fonction st_project.
en regardant dans la doc de postgis
https://postgis.net/docs/ST_Project.html
on a un exemple où pour projeter un point de 100 mètres sur un radian de 45degrés, il faut utiliser une distance de 100000
exemple:
SELECT ST_AsText(ST_Project('POINT(0 0)'::geography, 100000, radians(45.0)));
ce qui retourne une ligne avec des coordonnées de POINT(0.635231029125537 0.639472334729198)
en utilisant cet exemple, le point n'est pas projeté à 100 mètre mais à 50 cm.
j'ai le même problème pour d'autres exemples. ce qui est problématique sachant que pour mon cas, je souhaite déplacer plusieurs points selon une distance définie.
que dois-je mettre, si je souhaite déplacer le point de 65 mètres par exemple.
merci à vous
Hors ligne
#2 Sat 23 April 2022 05:49
- Cornet Jérémie
- Participant assidu
- Lieu: Nouméa
- Date d'inscription: 6 Apr 2008
- Messages: 229
Re: problème fonction st Project
Bonjour,
le type geography, c'est des coordonnées géographiques donc c'est du longitude/latitude.
Dans l'exemple de la documentation, c'est donc un déplacement de 100 km au nord-est du point de longitude 0 et latitude 0.
Si vous avez une colonne geometry (coordonnées projetés), il faut utiliser st_translate avec un peu de trigonométrie pour calculer les delta_x et delta_y :
Code:
st_translate(ma_geom, sin(radians(angle))*distance, cos(radians(angle))*distance)
Dernière modification par Cornet Jérémie (Sat 23 April 2022 06:12)
Hors ligne