#1 Thu 13 June 2024 12:05
- LPlante
- Participant occasionnel
- Date d'inscription: 17 Nov 2021
- Messages: 44
QGIS: Overlay_intersect startpoint(lineairesource)
Bonjour
Sujet revenant régulièrement a propos de l'efficacité de la fonction overlay_intersect() pour remplacer un aggregate( ... , filter:=intersects($geometry , geometry(@parent))
Le paramètre expression de l'overlay permet de transformer un champs cible mais il n'y a visiblement pas moyen de transformer la geometrie source. Le filtre de l'overlay ne s'applique pas non plus comme celui de l'aggregate
Peut on du coup adapter un overlay pour faire l'equivalent d'un aggregate( ... , filter:=intersects($geometry , startpoint(geometry(@parent))) pour bénéficier de sa vitesse d’exécution ?
Merci d'avance
Hors ligne
#2 Thu 13 June 2024 14:28
- GlaDal
- Participant assidu
- Date d'inscription: 30 Aug 2013
- Messages: 1087
Re: QGIS: Overlay_intersect startpoint(lineairesource)
Bonjour,
Peut-être trouverez vous une réponse dans les liens suivants :
https://hfcqgis.opendatasicilia.it/esem … rapposto/#
https://gis.stackexchange.com/questions … nt-of-line
Je pense qu'il faut rajouter un buffer (même de 0.01) pour que votre expression fonctionne toujours.
Hors ligne
#3 Thu 13 June 2024 15:30
- LPlante
- Participant occasionnel
- Date d'inscription: 17 Nov 2021
- Messages: 44
Re: QGIS: Overlay_intersect startpoint(lineairesource)
Merci Gladal,
En effet j'avais étudié la possibilité du overlay_nearest + within (ou intersect https://gis.stackexchange.com/questions … art-end-co )
Mais juste l'utilisation de nearest (avec max_distance ) est plus lent que l'aggregate
Et à cause de micro decallages (anticipé par le buffer0.01 d'un aggregate), le overlay_intersect ne récupère pas les 2 extremités à tout le coup pour faire le second traitement avec start_point
Impasse
Hors ligne