Message posté par : aknleo (aknleo(a)yahoo.fr)
----------------------------------------
Bonjour,
Je suis à la recherche d'un exemple ou syntaxe de fichier .ttkls permettant de visualiser un fichier postgis à partir du viewer tatukGis.
Merci d'avance.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321261#p321261
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
-----------------
Citation :
1. Qu'elle serait la formule si je fais la même chose en partant de l'origine ? Est-ce que c'est ça : T_LineInterpolatePoint(geom, (d / st_Length(geom))
-----------------
Oui.
-----------------
Citation :
2. Comment faire si je veux créer plusieurs points sur cette même ligne à partir de cette fonction ?
-----------------
Si vous voulez interpoler plusieurs points avec la même distance entre eux :
https://postgis.net/docs/ST_LineInterpolatePoints.html
Si vous voulez avoir plusieurs champs représentant plusieurs points, vous pouvez juste répéter l'appel à la fonction.
Si vous voulez créer un multipoint, vous utilisez une fonction telle que st_collect ou st_union,
qui possèdent toutes deux une définition ayant comme un argument un tableau de geometries :
-----------------
Code :
St_Collect(ARRAY[ST_LineInterpolatePoint(geom, 1 - (d / st_Length(geom)), ST_LineInterpolatePoint(geom, 1 - (e / st_Length(geom)), ...])
-----------------
-----------------
Citation :
3. Comment faire avec cette fonction, dans le cas où j'ai plusieurs tronçons, et que mes points ne sont associés qu'à certains tronçons. Je présume que ma base de données qui correspondra à mes points doit contenir le numéro du tronçon et la distance. Et comment lui signifier dans la fonction
-----------------
Il faut joindre vos deux tables pour créer l'ensemble des points dans une sous requête
puis utiliser la version agrégat de st_collect pour collecter tout les points par tronçon.
Avec un schema comme suit :
-----------------
Code :
CREATE TABLE tronçon(numero_tronçon int, geom geometry);
CREATE TABLE point(distance d double, numero_tronçon int);
-----------------
La requête
-----------------
Citation :
SELECT
numero_tronçon,
st_collect(the_point) AS multi_points
FROM(
SELECT
t.numero_tronçon,
ST_LineInterpolatePoint(geom, 1 - (d / st_Length(geom)) AS the_point
FROM
tronçon AS t
JOIN
point AS p
ON
t.numero_tronçon = p.numero_tronçon
) AS sous_requete
GROUP BY
numero_tronçon
;
-----------------
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321255#p321255
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Julien Gondellon
----------------------------------------
Merci pour le retour.
Je connaissais le lien que tu m'as transmis.
Trois dernières questions :
1. Qu'elle serait la formule si je fais la même chose en partant de l'origine ? Est-ce que c'est ça : T_LineInterpolatePoint(geom, (d / st_Length(geom))
2. Comment faire si je veux créer plusieurs points sur cette même ligne à partir de cette fonction ?
3. Comment faire avec cette fonction, dans le cas où j'ai plusieurs tronçons, et que mes points ne sont associés qu'à certains tronçons. Je présume que ma base de données qui correspondra à mes points doit contenir le numéro du tronçon et la distance. Et comment lui signifier dans la fonction
(Je pense que je ne suis pas du tout clair sur le troisième point.
Merci du retour.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321242#p321242
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
Salut,
apparemment c'est un bug qui a été corrigé dans la version 2.4.3
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321182#p321182
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Christophe
----------------------------------------
Bonjour,
Si l'extrémité est le dernier sommet de la polyligne (par opposition au premier, l'origine), et d la distance, la syntaxe serait :
-----------------
Code :
ST_LineInterpolatePoint(geom, 1 - (d / st_Length(geom))
-----------------
Plus de détails :
http://postgis.net/docs/ST_LineInterpolatePoint.html
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321142#p321142
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Julien Gondellon
----------------------------------------
Bonsoir,
Je voudrais savoir si avec cet outil nous pouvons creer des points à une distance donnée depuis l'extrémité d'une polyligne.
Merci
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321124#p321124
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
Salut,
tout d'abord,
le message d'erreur semble indiquer que la colonne géométrique
de votre table lignes_zone_test est de type multi linestring.
A ce moment là, il faudrait les extraire avec st_dump.
Ensuite, le résultat que vous obtenez vient du fait que
votre requête exécute pour st_split pour chaque combinaison
des géométries de vos deux tables.
Cette fonction, utilisée avec une géométrie et une ligne de découpe
qui sont géométriquement disjointes, aura pour résultat la géométrie originale.
Pour supprimer ces résultats inutiles, il faudrait rajouter une condition de jointure
entre vos deux tables pour ne retenir que les éléments qui s'intersectent :
-----------------
Code :
SELECT ST_CollectionExtract(ST_Split(rect.geom, line.the_geom),3)
FROM public.polygones_zone_test as rect
JOIN public.lignes_zone_test as line
ON st_intersects(rect.geom, line.the_geom)
-----------------
Si vous ne l'avez pas déjà fait, vous devriez ajouter un index géométrique
sur l'une de vos deux tables, (typiquement celles qui contient le plus
grand nombre de ligne).
Mais je ne suis pas sur que cela soit le résultat que vous attendiez,
supposez un polygone traversé par plusieurs lignes,
chaque découpage se déroulera indépendamment avec toujours le polygone orignal en entier.
Pour découper avec une multi ligne, il vous faudrait passer à postgis 2.5
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321041#p321041
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : T. Rossini
----------------------------------------
Salut,
-----------------
Citation :
- cela me crée autant de lignes qu'il y a de event_id
-----------------
oui, c'est logique, on groupe par event_id, je pensais que c'était la chose désirée.
Si vous voulez grouper par autre chose, par exemple trip_id peut-être,
il vous faut modifier la clause GROUP BY.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=321037#p321037
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net
Message posté par : Ericge
----------------------------------------
A priori ce programme ne fonctionne pas :
- cela me crée autant de lignes qu'il y a de event_id
- les lignes sont toutes identiques et relient tous les points de la table
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=320988#p320988
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net