Ответы:
Прямо рядом со списком функций вашего скриншота должна быть документация выбранной функции. Для меня с 2.18.12 те читают:
$ geometry Возвращает геометрию текущего объекта. Может использоваться для обработки с другими функциями.
геометрия Возвращает геометрию объекта.
Это похоже на отличие метода от функции в объектно-ориентированном программировании. $ геометрия это геометрия этого / себя . Вы можете думать об этом больше как атрибут или свойство, может быть.
геометрия, с другой стороны, требует / позволяет вам передать элемент, и он вернет соответствующую геометрию. Как видно из документации, вы можете использовать это, чтобы получить геометрию из выбора атрибутов на основе атрибутов:
geometry(
get_feature(layer, attributeField, value)
)
То, что вы можете сделать с ним, ограничено вашим творческим потенциалом и источниками возможностей, которые можно передать. :)
$geometry
скорее (постоянная) переменная, независимо от того, ОО или нет.
$geometry
возвращает геометрию текущего объекта, как вgeom_to_wkt($geometry)
geometry
возвращает геометрию конкретного объекта, как вgeom_to_wkt(geometry(get_feature('my_layer', 'my_feature', feature_id)))
Вы можете использовать второй случай, если хотите, например, обработать текущую функцию по отношению к определенной функции:
intersects($geometry,geometry(get_feature(layer,attributeField,value)))