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é ?

#1 Wed 09 March 2022 10:49

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1667

QGIS: surface depuis une couche autre que couche de couverture

Bonjour,
J'ai une couche de couverture de parcelles d'exploitants à partir de laquelle je réalise des surfaces de pistes intersectées. Pour l'Atlas, pour calculer la surface des pistes intersectées cela fonctionne avec la fonction aggregate.
Maintenant je dois aussi calculer la surface des pistes qui se situent à l'intérieur de la couche de parcelles d'exploitants mais qui sont intersectées par la couche du registre parcellaire graphique. Quelle peut-être l'expression adéquate?
Merci.

Hors ligne

 

#2 Wed 09 March 2022 18:18

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1667

Re: QGIS: surface depuis une couche autre que couche de couverture

J'ai réussi à inscrire pour chaque page de l'atlas, l'indemnisation qui est la multiplication des surfaces de pistes intersectées par des coefficients selon les parcelles agricoles du registre parcellaire graphique qui les intersectent. Je rappelle que la couche de couverture est l'ensemble des parcelles par exploitant.
La table se décompose comme suit :
Exploitant          Surface          Coef     Culture
AA                         1000          1              Maîs
AA                         2000          2                Blé
BB                          500           3               Colza
BB                         3000          1               Maïs

Cela donne pour l'exploitant
-AA : 5000 eurosn -- c'est-à-dire (1000*1)+(2000*2)
-BB : 4500 euros


L'expression est la suivante :
('Indemnisation : ' ||  ' ' || aggregate('Accès_buffer_decoupé_RPG','sum', "Indem" ,filter:=intersects($geometry,@atlas_geometry)))|| ' ' || 'euros'

Est-il possible d'avoir en mieux :
Exploitant AA : Maïs (1000 euros) - Blé (4000 euros) = 5000 euros

Exploitant BB : Colza(1500 euros) - Maïs(3000 euros) = 4500 euros

Merci.

Hors ligne

 

#3 Fri 11 March 2022 19:29

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3927

Re: QGIS: surface depuis une couche autre que couche de couverture

Bonjour,

Code:

concat(
  concatenate(
    expression:=concat("Culture", ' (', "Coef" * "Surface", ' euros)'),
    group_by:="Exploitant",
    concatenator:=' - '
  ),
  ' = ',
  sum("Coef" * "Surface", group_by:="Exploitant"), ' euros'
)

Hors ligne

 

#4 Fri 11 March 2022 20:01

conejo
Participant assidu
Lieu: Lunel
Date d'inscription: 2 Dec 2005
Messages: 1667

Re: QGIS: surface depuis une couche autre que couche de couverture

Merci.

Hors ligne

 

Pied de page des forums

Powered by FluxBB