Message posté par : Pascal PLUVINET
----------------------------------------
Bonjour,
J'ai une couche de polygones dont certains petits polygones ont un attribut NULL.
J'aimerai affecter à ces petits polygones la valeur du polygones voisins. Comme certains sont entourés eux même de petits polygones avec des valeurs nulles, je souhaitais utiliser une fonction récursive qui ferait un UPDATE tant qu'il y a des valeurs nulles.
J'ai tenté la rédaction ci-après mais ca ne met à jour qu'une fois les polygones , la récursivité ne fonctionne pas et il reste des polygones avec des valeurs nulles qui ne sont pourtant pas isolés.
N'étant pas à l'aise avec les fonctions récursives, je fais appel à vos compétences
-----------------
Code :
WITH RECURSIVE b AS
(
SELECT * FROM poly
WHERE attr is not null
)
UPDATE poly a
SET attr = b.attr
FROM b
WHERE a.attr is null AND st_intersects(a.geom,b.geom)
;
-----------------
Merci d'avance pour vos suggestions,
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=370393#p370393
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 : ADL (florent.second(a)meurthe-et-moselle.gouv.fr)
----------------------------------------
Bonjour,
ce problème a-t-il trouvé une solution ? Je suis confronté aux mêmes difficultés de connexion 3 ans après...
Merci par avance de vos réponses.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=370443#p370443
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 Vergon (christophe.vergon(a)protonmail.com)
----------------------------------------
Bonjour,
Je dispose de deux géométries de type LINESTRING,
L'une est la réduction de l'autre par suppression de n points. Elles ont donc un certains nombres de sommets (au moins deux) strictement identiques d'un point de vue spatial et le résultat de st_overlaps de ces deux géométries me renvoie Faux !!!
Version de postgis : "3.4 USE_GEOS=1 USE_PROJ=1 USE_STATS=1"
Une idée ?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=370134#p370134
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 : Pastore
----------------------------------------
Bonjour,
Je vous contacte pour savoir si il y a une manière rapide de passer de la version 3.4 de Postgis à la 3.1 sur Postgresql
Via PG Admin, j'ai mis à jour la version avec la commande ALTER EXTENSION postgis UPDATE TO 3.4 ;
Doit on passer par une désinstallation/réinstallation pour revenir à la version initiale ?
Merci beaucoup pour vos conseils !!
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=370008#p370008
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 BADOL
----------------------------------------
Bonjour,
J'ai beaucoup de tables en Lambert 93 avec 9 chiffres après la virgule.
J'avais subodoré que réduire cette précision inutile ferait gagner de la place sur le disque, augmenterait un peu la vitesse d'affichage et réduirait le temps des géotraitements.
J'ai questionné chatGPT sur le sujet (qui n'a pas été très bon il faut le reconnaitre) : https://chatgpt.com/share/6714c630-6270-800a-83d0-658648c01dbe
Je vous livre mes comparaisons entre
- ST_ReducePrecision à 0.01
- ST_SnapToGrid à 0.01
- ST_QuantizeCoordinates à 0
---- Situation initiale (en Lambert93):
DROP TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023;
CREATE TABLE public.l_bati_agrege_pepci_006_2023
(LIKE p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023 INCLUDING ALL);
ALTER TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023
CLUSTER ON l_bati_agrege_pepci_006_2023_geom_idx;
INSERT INTO public.l_bati_agrege_pepci_006_2023
SELECT * FROM p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023;
--> Updated Rows 305707
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023'));
--> 100 MB
---- On vacuum
VACUUM FULL public.l_bati_agrege_pepci_006_2023;
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023'));
--> 97 MB
--- On réindexe
REINDEX TABLE public.l_bati_agrege_pepci_006_2023;
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023'));
--> 97 MB
---- Test 1 : ST_ReducePrecision à 0.01
DROP TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t1;
CREATE TABLE public.l_bati_agrege_pepci_006_2023_t1
(LIKE p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023 INCLUDING ALL);
ALTER TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t1
CLUSTER ON l_bati_agrege_pepci_006_2023_t1_geom_idx;
INSERT INTO public.l_bati_agrege_pepci_006_2023_t1
SELECT * FROM p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023;
--> Updated Rows 305707
UPDATE public.l_bati_agrege_pepci_006_2023_t1
SET geom= ST_ReducePrecision(geom, 0.01)
WHERE ST_IsValid(geom)
-- Vérifie que la simplification ne change pas le nombre de polygones ou de points
AND ST_GeometryType(geom) = ST_GeometryType(ST_ReducePrecision(geom, 0.01))
-- Vérifie que la simplification ne vide pas la géographie
AND ST_Area(ST_ReducePrecision(geom,0.01)) > 0;
--> Updated Rows 305699
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t1'));
--> 194 MB
---- On optimise
VACUUM FULL public.l_bati_agrege_pepci_006_2023_t1;
REINDEX TABLE public.l_bati_agrege_pepci_006_2023_t1;
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t1'));
--> 196 MB
---- Test 2 : ST_SnapToGrid à 0.01
DROP TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t2;
CREATE TABLE public.l_bati_agrege_pepci_006_2023_t2
(LIKE p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023 INCLUDING ALL);
ALTER TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t2
CLUSTER ON l_bati_agrege_pepci_006_2023_t2_geom_idx;
INSERT INTO public.l_bati_agrege_pepci_006_2023_t2
SELECT * FROM p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023;
--> Updated Rows 305707
UPDATE public.l_bati_agrege_pepci_006_2023_t2
SET geom= ST_SnapToGrid(geom, 0.01)
WHERE ST_IsValid(geom) AND ST_IsValid(ST_SnapToGrid(geom, 0.01))
-- Vérifie que la simplification ne change pas le nombre de polygones ou de points
AND ST_GeometryType(geom) = ST_GeometryType(ST_SnapToGrid(geom, 0.01))
-- Vérifie que la simplification ne vide pas la géographie
AND ST_Area(ST_SnapToGrid(geom, 0.01)) > 0;
--> Updated Rows 305311
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t2'));
--> 195 MB
---- On optimise
VACUUM FULL public.l_bati_agrege_pepci_006_2023_t2;
REINDEX TABLE public.l_bati_agrege_pepci_006_2023_t2;
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t2'));
--> 195 MB
--- Test 3 : ST_QuantizeCoordinates
DROP TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t3;
CREATE TABLE public.l_bati_agrege_pepci_006_2023_t3
(LIKE p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023 INCLUDING ALL);
ALTER TABLE IF EXISTS public.l_bati_agrege_pepci_006_2023_t3
CLUSTER ON l_bati_agrege_pepci_006_2023_t3_geom_idx;
INSERT INTO public.l_bati_agrege_pepci_006_2023_t3
SELECT * FROM p_enveloppe_bati_2023.l_bati_agrege_pepci_006_2023;
--> Updated Rows 305707
UPDATE public.l_bati_agrege_pepci_006_2023_t3
SET geom = ST_QuantizeCoordinates(geom, 0)
WHERE ST_IsValid(geom) AND ST_IsValid(ST_QuantizeCoordinates(geom, 0))
-- Vérifie que la simplification ne change pas le nombre de polygones ou de points
AND ST_GeometryType(geom) = ST_GeometryType(ST_QuantizeCoordinates(geom, 0))
-- Vérifie que la simplification ne vide pas la géographie
AND ST_Area(ST_QuantizeCoordinates(geom, 0)) > 0;
--> Updated Rows 300855
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t3'));
--> 191 MB
---- On optimise
VACUUM FULL public.l_bati_agrege_pepci_006_2023_t3;
REINDEX TABLE public.l_bati_agrege_pepci_006_2023_t3;
SELECT pg_size_pretty(pg_total_relation_size('public.l_bati_agrege_pepci_006_2023_t3'));
--> 192 MB
Si vous avez un semblant d'explication, je veux bien car je sèche un peu. Ne pas gagner de la place car la géométrie est stockée d'une même manière quelle que soit sa précision… je peux comprendre.
Mais doubler la taille initiale… j'étais loin de m'en douter.
d'avance merci à celles et ceux qui prendront le temps de me lire et de me répondre.
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=369900#p369900
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 : chillyelectronic (sectpromise(a)gmail.com)
----------------------------------------
-----------------
yaks48 écrit :
Bonjour,
J'ai importé des rasters dans ma base de données PostGIS via raster2pgsql
Lorsque je les affiche dans QGIS (via DB Manager) je n'arrive pas à afficher les min et max de l'étendue en question, alors que ça marche très bien avec mon raster "source" depuis l'explorateur. Mon but pour cet exemple est de faire des cartes topo avec une symbologie qui dépend du min/max de l'emprise.
geometry dash (https://geometrydashgame.org/)
exemple de ligne de commande pour l'import raster2pgsql :
-----------------
Code :
raster2pgsql.exe -s 2154 -I -C -M C:test_pgsqlBDALTI1.asc -F public.test8 | psql -U postgres -d qgis -h ADRESSE IP -p 5432
-----------------
avez-vous des solutions svp ?
j'ai testé avec différents types de fichiers initiaux avant import, rien ne change. et ça marche même lorsque j'exporte le raster depuis DB Manager dans mon explorateur.
Merci beaucoup !
-----------------
Recalculate Statistics: Use the PostGIS ST_SummaryStats() function to get the min/max values and confirm they exist.
Symbology Settings: In QGIS, manually set the symbology to reflect the correct min/max values.
Coordinate System: Ensure the raster has the correct SRID (2154 in your case).
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=369881#p369881
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 : felixd
----------------------------------------
Trouver :
-----------------
Code :
update table_line l
set geom= st_setPoint(l.geom, 0, p.geom)
from table_point p
where id=4
-----------------
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=366664#p366664
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 : lberon (l.beron(a)amiens-metropole.com)
----------------------------------------
Bonjour,
Je tente de brancher les connexions de nos utilisateurs de BDD à notre LDAP pour des raisons de sécurité.
Je n'arrive en revanche pas à paramétrer correctement et j'ai une impossibilité pour m'authentifier :
FATAL: authentification LDAP échouée pour l'utilisateur « u.user » FATAL: authentification LDAP échouée pour l'utilisateur « u.ser »
J'ai les éléments suivants pour notre LDAP (infos fictives) :
- nom : ldap.dcnt1.org
- port : 400
- DC = dcnt1, org
J'ai donc paramétré l'authentification par la configuration suivante :
host all all IP/24 ldap ldapserver=ldap.dcnt1.org ldapport=400 ldapprefix="" ldapsuffix=", dc=dcnt1, dc=org"
Je n'arrive pas à cerner la différence entre une connexion search et search+bind.
J'en comprends que le search + bind utilise une pré-authentification et va rechercher si le u.user qui essaie de se connecter existe dans le LDAP.
Le search classique utilise le u.user directement.
Une personne de la communauté pourrait-elle m'aiguiller ?
Dois-je renseigner des OU ?
Dois-je utiliser le compte READ(a)dcnt1.org (mot de passe : mdpread) qui est notre compte user pour lire l'AD ?
Dois-je renseigner d'autres options ?
J'ai tenté de nombreuses configurations, sans succès.
A chaque fois le message d'erreur d'authentification apparaît.
Mon u.user a eu un simple GRANT TO CONNECT ON MA_BASE TO "u.user";
En vous remerciant, Léandre BERON
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=368607#p368607
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 : Marc Gauthier
----------------------------------------
Suite à l'article https://www.icem7.fr/cartographie/les-lignes-de-force-du-vote-rn-en-2024/ j'essaye avec POSTGIS mais mes essais avec ST_Intersection sont très très lent : plusieurs minutes contre quelques secondes avec Mapshaper.
Avez-vous des pistes pour avoir de bonnes performances ?
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=369202#p369202
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 : barthoum
----------------------------------------
Bonjour,
J'ai d'un coté une base Postgre, de l'autre Power BI, 'ai réussi à faire la liaison entre les deux (via ODBC)... les graphes et tableaux de bord fonctionnent...
Je voudrais cependant tester la fonction "carte" à partie d'une de mes vues Postgis.
1er constat: la colonne de géométrie est en hexadécimal sur une colonne( probablement en WGS 84 Pseudomercator (EPSG 3857)
Je travaille actuellement sur une couche point
Power BI semble digérer le WGS 84 (epsg 4326). comment faire pour que ma vue intègre en plus de l'existant, des colonnes de géométries compatibles Power BI et à la bonne projection? via le code de la couche, via un script??
Dans le cas où je souhaite étendre l'expérience à une couche polygone , la conversion est t'elle possible. doit on passer par le centroïde du polygone, et si oui, comment ?
Merci pour vos retours
----------------------------------------
Le message est situé https://georezo.net/forum/viewtopic.php?pid=364889#p364889
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