Antworten:
Direkt neben der Liste der Funktionen, von denen Ihr Screenshot ist, sollte sich die Dokumentation der aktuell ausgewählten Funktion befinden. Für mich lauteten diese mit 2.18.12:
$ geometry Gibt die Geometrie des aktuellen Features zurück. Kann zur Verarbeitung mit anderen Funktionen verwendet werden.
Geometrie Gibt die Geometrie eines Features zurück.
Dies ist wie der Unterschied zwischen einer Methode und einer Funktion in der objektorientierten Programmierung. $ Geometrie ist dies / Selbst ‚s Geometrie. Sie können es sich vielleicht eher wie ein Attribut oder eine Eigenschaft vorstellen.
Geometrie auf der anderen Seite erfordert / können Sie eine Funktion zu übergeben , und es wird zurückkehren die entsprechende Geometrie. Wie die Dokumentation zeigt, können Sie diese verwenden, um die Geometrie aus einer attributbasierten Feature-Auswahl abzurufen:
geometry(
get_feature(layer, attributeField, value)
)
Was kann man damit machen durch Ihre Kreativität und die Quellen für nur begrenzte Funktionen zu übergeben , um es. :)
$geometry
eher eine (konstante) Variable, unabhängig davon, ob OO oder nicht.
$geometry
Gibt die Geometrie des aktuellen Features wie in zurückgeom_to_wkt($geometry)
geometry
Gibt die Geometrie eines bestimmten Features wie in zurückgeom_to_wkt(geometry(get_feature('my_layer', 'my_feature', feature_id)))
Sie würden den zweiten Fall verwenden, wenn Sie beispielsweise das aktuelle Feature gegen ein bestimmtes Feature verarbeiten möchten:
intersects($geometry,geometry(get_feature(layer,attributeField,value)))