| ddbs_has_dim | R Documentation |
Functions to check whether geometries have Z (elevation) or M (measure) dimensions
ddbs_has_z(
x,
by_feature = TRUE,
new_column = "has_z",
conn = NULL,
name = NULL,
mode = NULL,
overwrite = FALSE,
quiet = FALSE
)
ddbs_has_m(
x,
by_feature = TRUE,
new_column = "has_m",
conn = NULL,
name = NULL,
mode = NULL,
overwrite = FALSE,
quiet = FALSE
)
x |
Input spatial data. Can be:
Data is returned from this object. |
by_feature |
Logical. If |
new_column |
Name of the new column to create on the input data. Ignored
with |
conn |
A connection object to a DuckDB database. If |
name |
A character string of length one specifying the name of the table,
or a character string of length two specifying the schema and table
names. If |
mode |
Character. Controls the return type. Options:
Can be set globally via |
overwrite |
Boolean. whether to overwrite the existing table if it exists. Defaults
to |
quiet |
A logical value. If |
These functions check for additional coordinate dimensions beyond X and Y:
ddbs_has_z() checks if a geometry has Z coordinates (elevation/altitude values).
Geometries with Z dimension are often referred to as 3D geometries and have
coordinates in the form (X, Y, Z).
ddbs_has_m() checks if a geometry has M coordinates (measure values). The M
dimension typically represents a measurement along the geometry, such as distance
or time, and results in coordinates of the form (X, Y, M) or (X, Y, Z, M).
Depends on the mode argument (or global preference set by ddbs_options):
duckspatial (default): A duckspatial_df (lazy spatial data frame) backed by dbplyr/DuckDB.
sf: An eagerly collected object in R memory, that will return the same data type as the
sf equivalent (e.g. sf or units vector).
When name is provided, the result is also written as a table or view in DuckDB and the function returns TRUE (invisibly).
## Not run:
## load packages
library(dplyr)
library(duckspatial)
## create a duckdb database in memory (with spatial extension)
conn <- ddbs_create_conn(dbdir = "memory")
## read data
countries_ddbs <- ddbs_open_dataset(
system.file("spatial/countries.geojson",
package = "duckspatial")
) |>
filter(ISO3_CODE != "ATA")
## check if it has Z or M
ddbs_has_m(countries_ddbs)
ddbs_has_z(countries_ddbs)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.