Functions to construct a CQL expression to be used
to filter results from vicmap_query()
.
See the geoserver CQL documentation for details.
The sf object is automatically simplified to a less complex sf object
to reduce the complexity of the Web Service call. Subsequent in-memory
filtering may be needed to achieve exact results.
EQUALS(geom)
DISJOINT(geom)
INTERSECTS(geom)
TOUCHES(geom)
CROSSES(geom)
WITHIN(geom)
CONTAINS(geom)
OVERLAPS(geom)
RELATE(geom, pattern)
BBOX(coords, crs = NULL)
DWITHIN(
geom,
distance,
units = c("meters", "feet", "statute miles", "nautical miles", "kilometers")
)
BEYOND(
geom,
distance,
units = c("meters", "feet", "statute miles", "nautical miles", "kilometers")
)
an sf
/sfc
/sfg
or bbox
object (from the sf
package)
spatial relationship specified by a DE-9IM matrix pattern.
A DE-9IM pattern is a string of length 9 specified using the characters
*TF012
. Example: '1*T***T**'
the coordinates of the bounding box as four-element numeric
vector c(xmin, ymin, xmax, ymax)
, a bbox
object from the sf
package (the result of running sf::st_bbox()
on an sf
object), or
an sf
object which then gets converted to a bounding box on the fly.
(Optional) A numeric value or string containing an SRS code. If
coords
is a bbox
object with non-empty crs, it is taken from that.
(For example, 'EPSG:3005'
or just 3005
. The default is to use the CRS of
the queried layer)
numeric value for distance tolerance
units that distance is specified in. One of
"feet"
, "meters"
, "statute miles"
, "nautical miles"
, "kilometers"
a CQL expression to be passed on to the WFS call
The code for these cql predicates was developed by the bcdata team: https://bcgov.github.io/bcdata/reference/cql_geom_predicates.html