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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Wed 14 June 2023 10:42

image95
Participant assidu
Date d'inscription: 6 Sep 2014
Messages: 257

QGIS/Postgis Raster: visu/selection des pixels intersects vector

Bonjour,
J'ai dans ma bdd postgis, 1 raster et 1 polygone vecteur.
J'aimerais pouvoir dans qgis visualiser uniquement les pixels qui sont à l'intérieur ou qui intersectent mon polygone.
J'aimerais faire un uniquement un select et non un create table. Je pensais utiliser pour celà la fenetre SQL du plugin BDD. 
Voici un exemple :

Code:

SELECT temp_rast.*
FROM public.temp_rast, andra_humain."FAVL_ZoneEtude_Po"
WHERE ST_Intersects(temp_rast.rast,"FAVL_ZoneEtude_Po".geom)

Quand j'execute, ca fonctionne. Mais j'arrive pas à charger en tant que nouvelle couche. je mets rid pour les valeurs unique. Et je mets rast pour la colonne geom. Mes tables ont bien des index et des contraintes (pk)

Voici le message d'erreur que j'obtiens dans les logs qgis :

Code:

2023-06-14T10:31:57     WARNING    Couche PostgreSQL invalide
2023-06-14T10:32:38     WARNING    Champ rast ignoré parce que le type b n'est pas supporté
2023-06-14T10:32:38     WARNING    Une erreur s'est produite lors de l'extraction des métadonnées raster pour "public"."a", l'analyse des données raster (qui peut être très lente) se poursuit : Impossible d'obtenir le nombre de bandes à partir de la valeur : ''..
             Veuillez envisager d'ajouter des contraintes raster avec la fonction PostGIS AddRasterConstraints.
2023-06-14T10:32:38     INFO    Aucun aperçu trouvé, les performances peuvent être affectées pour "public"."a"
2023-06-14T10:40:17     WARNING    Requête erronée : SELECT 0, array_agg(DISTINCT st_srid("rast")::text || ':' || UPPER(geometrytype("rast")) || ':' || ST_Zmflag("rast")) FROM (SELECT "rast" FROM (SELECT temp_rast.* FROM public.temp_rast, andra_humain."FAVL_ZoneEtude_Po" WHERE ST_Intersects(temp_rast.rast,"FAVL_ZoneEtude_Po".geom)
             ) AS "subQuery_0") AS _unused a retourné 7 [ERREUR: la fonction geometrytype(raster) n'existe pas
             LINE 1: ...gg(DISTINCT st_srid("rast")::text || ':' || UPPER(geometryty...
              ^
             HINT: Aucune fonction ne correspond au nom donné et aux types d'arguments.
             Vous devez ajouter des conversions explicites de type.
             ]
2023-06-14T10:40:17     WARNING    Couche PostgreSQL invalide

Hors ligne

 

Pied de page des forums

Powered by FluxBB