Juste à côté de la liste des fonctions de votre capture d'écran devrait se trouver la documentation de la fonction actuellement sélectionnée. Pour moi, avec 2.18.12 ceux-ci se lisent:
$ geometry Renvoie la géométrie de l'entité courante. Peut être utilisé pour le traitement avec d'autres fonctions.
geometry Renvoie la géométrie d' une entité.
C'est comme la différence entre une méthode et une fonction dans la programmation orientée objet. $ géométrie est cette / auto la géométrie. Vous pouvez y penser plus comme un attribut ou une propriété peut-être.
la géométrie d'autre part nécessite / vous permet de lui passer une fonction et elle renverra la géométrie correspondante. Comme le montre la documentation, vous pouvez l'utiliser pour obtenir la géométrie à partir d'une sélection d'entités basée sur des attributs:
geometry(
get_feature(layer, attributeField, value)
)
Ce que vous pouvez faire d'autre est juste limité par votre créativité et les sources de fonctionnalités qui lui sont transmises. :)
$geometry
c'est plutôt une variable (const), peu importe si OO ou non.$geometry
renvoie la géométrie de l' entité actuelle comme dansgeom_to_wkt($geometry)
geometry
renvoie la géométrie d'une entité spécifique comme dansgeom_to_wkt(geometry(get_feature('my_layer', 'my_feature', feature_id)))
Vous utiliseriez le deuxième cas si vous vouliez, par exemple, traiter la fonction actuelle contre une fonction spécifique:
intersects($geometry,geometry(get_feature(layer,attributeField,value)))
la source