Message posté par : aboubacar
----------------------------------------
Bonjour j'ai essayé d'adapter ton code à ma problématique pour afficher des images
dans mon composeur d'atlas mais l'image ne s'affiche pas
code d'origine:
[%-- Récupérer un tableau d'images associées à l'entité courante dans
l'Atlas
with_variable(
'liste_image',
aggregate(
layer:='photos_geo', -- Nom de la couche contenant les
images
aggregate:='array_agg', -- Regroupe les résultats dans un
tableau
expression:='file:///'||
replace(@project_folder,'\\','/')||'/Pl@ntNet/'||
"Name", -- Construit le chemin les chemins des images avec la
variable dossier projet et le champ Name des photo/images
filter:=intersects(
buffer(transform($geometry, 'EPSG:4326', 'EPSG:2154'),5), --
Transformation de la géométrie pour comparaison
geometry(@atlas_feature) -- Géométrie de l'entité
courante dans l'Atlas
),
order_by:="Timestamp" -- Tri des résultats par
"Timestamp"
),
-- Générer le code HTML pour afficher les images avec légende
array_to_string(
array_foreach(
generate_series(0, array_length(@liste_image) - 1), -- Pour chaque image dans
la liste
format(
'<div class="image-cell"><img src="%1"
alt="%2" class="dynamic-image"><br><span
class="caption">%2</span></div>',
@liste_image[@element], -- Lien vers l'image
replace(@liste_image[@element],
'file:///'||replace(@project_folder,'\\','/')||'/',
'') -- Légende de l'image
)
),
'' -- Pas d'élément de séparation entre les images
)
)
%]
code adapté:
[%-- Récupérer un tableau d'images associées à l'entité courante dans
l'Atlas
with_variable(
'liste_image',
aggregate(
layer:='EchantillonSond', -- Nom de la couche contenant les
images
aggregate:='array_agg', -- Regroupe les résultats dans un
tableau
expression:='file:///'||
replace(@project_folder,'\\','/')||'/DCIM/'|| "Photo",
-- Construit le chemin les chemins des images avec la variable dossier projet
et le champ Name des photo/images
filter:= ("Nom_sondage" = attribute( @atlas_feature , 'Nom
Sondage' )
),
order_by:="Nom_sondage" -- Tri des résultats par
"Timestamp"
),
-- Générer le code HTML pour afficher les images avec légende
array_to_string(
array_foreach(
generate_series(0, array_length(@liste_image) - 1), -- Pour chaque image dans
la liste
format(
'<div class="image-cell"><img src="%1"
alt="%2" class="dynamic-image"><br><span
class="caption">%2</span></div>',
@liste_image[@element], -- Lien vers l'image
replace(@liste_image[@element],
'file:///'||replace(@project_folder,'\\','/')||'/',
'') -- Légende de l'image
)
),
'' -- Pas d'élément de séparation entre les images
)
)
%]
quelqu'un voit un truc que j'ai mal fait svp
-----------------
Julien81 écrit :
-----------------
Julien81 écrit :
Un lien pour illustrer avec des photos de drone qui viennent s'afficher à coté
d'une carte regroupées par les emprises départementales de la couche permettant de
générer l'atlas (Departements ADM EXP IGN)
lien vers dossier gdrive :
https://drive.google.com/drive/folders/1EKRNwX8kBcwn1pkrJBGdQkQ9NWJrqbnZ?us…
Salutations
-----------------
Bonjour à tous comme ça en intéresse et que je retrouvais pas le projet qui m'avait
permis de créer l'atlas de photos, j'ai repris l'histoire et fait un petit up
dans le dossier en lien qui ne contenait initialement que des pdf!
Désormais il y a un sous dossier en plus avec exemple de projet fonctionnel +data ( les
départements admin express "allégés" 12Mo en 2154 + 6Mo de photo dans un sous
dossier + couche de point générée avec plugin importPhoto en 4326).
Je filtre spatialement mes photos mais on pourrais procéder par attribut pareil en lien
avec les entités/groupe souhaités en atlas, il suffit d'avoir une table avec les
nom.ext de chaque photo + attribut de regroupement/filtre. Bon tout est à adapter à vos
contextes mais sur le principe hormis problème de syntaxe ou de construction de chemin, on
peut générer un tableau d'images en nombre variables dans le composeur, il faudra
définir des règles de mise en page mais ça reste jouable. A pousser car je ne maitrise pas
trop la partie html css et ici je me suis fait un petit peu aider d'un modèle
assistant^ On peut faire plus simple et design et surement aller beaucoup plus loin, mais
l'idée est de faire un truc rapidement qui fonctionne, un template à ajuster!
Bonne lecture, journée et week end!
-----------------
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=371559#p371559
Pour y répondre : qgis_fr(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