{ "name": "geometry_overlay_touches", "type": "function", "groups": ["GeometryGroup"], "description": "Performs a spatial join of type TOUCHES. This returns an array of results of an expression evaluated on features from a different layer that TOUCHES the current feature, or, if no expression if provided, simply returns whether at least one feature from the other layer TOUCHES the current feature.", "arguments": [ { "arg": "layer", "description": "the other layer" }, { "arg": "expression", "description": "an optional expression to evaluate on the features from the other layer (if not set, the function will just return a boolean indicating whether there is at least one match)", "optional": true }, { "arg": "filter", "description": "an optional expression to filter the matching features (if not set, all features will be returned)", "optional": true }, { "arg": "limit", "description": "an optional integer to limit the number of matching features (if not set, all features will be returned)", "optional": true }, { "arg": "cache", "description": "set this to true to build a local spatial index (most of the time, this is unwanted, unless you are working with a particularly slow data provider)", "optional": true, "default": false } ], "examples": [ { "expression": "geometry_overlay_touches('regions')", "returns": "True" }, { "expression": "geometry_overlay_touches('regions', name)", "returns": "['South Africa', 'Africa', 'World']" }, { "expression": "geometry_overlay_touches('regions', name, name != 'World')", "returns": "['South Africa', 'Africa']" }, { "expression": "geometry_overlay_touches('regions', name, limit:=1)", "returns": "['South Africa']" } ] }