Skip to contents

Create SpatVector objects

Usage

# S4 method for class 'dbSpatial'
vect(x, select = tidyselect::everything(), ...)

Arguments

x

A dbSpatial object to convert into a terra::SpatVector object

select

Columns to retain in output (default: all columns)

...

Additional arguments passed to sf::st_as_sf

Value

A terra::SpatVector containing the selected columns and geometry materialized from x.

Examples

# \donttest{
if (interactive() && requireNamespace("duckdb", quietly = TRUE)) {
  point_data <- data.frame(x = c(100, 200), y = c(500, 600), id = 1:2)
  point_vect <- terra::vect(point_data, geom = c("x", "y"))
  duckdb_conn <- DBI::dbConnect(duckdb::duckdb(), ":memory:")
  DBI::dbExecute(duckdb_conn, "SET threads = 1")
  dbs <- as_dbSpatial(point_vect, conn = duckdb_conn, name = "point_vect",
                      overwrite = TRUE)
  terra::vect(dbs)
  DBI::dbDisconnect(duckdb_conn, shutdown = TRUE)
}
# }