Skip to content

Commit bef2265

Browse files
committed
wrap filter in local to avoid dbplyr issue (see tidyverse/dbplyr#1480)
1 parent 556edad commit bef2265

File tree

2 files changed

+11
-13
lines changed

2 files changed

+11
-13
lines changed

R/read_layers.R

+10-12
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ read_vri <- function(dsn = NULL, layer = "VEG_R1_PLY_polygon", wkt_filter = NULL
3434
)
3535

3636
if(length(wkt_filter) > 0 ){
37-
vri_query <- vri_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
37+
vri_query <- vri_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
3838
}
3939

4040
vri <- bcdata::collect(vri_query)
@@ -100,14 +100,14 @@ read_bem <- function(dsn, layer = "BEM", wkt_filter = NULL) {
100100
dsn = dsn,
101101
layer = layer,
102102
quiet = TRUE,
103-
wkt_filter = if (is.null(wkt_filter)) {
103+
wkt_filter = if (is.null(wkt_filter)) {
104104
character(0)
105105
} else {
106-
sf::st_as_text(sf::st_as_sfc(wkt_filter))
106+
sf::st_as_text(sf::st_as_sfc(wkt_filter, crs = sf::st_crs(albers)))
107107
}
108108
)
109109
if(length(wkt_filter) > 0 ){
110-
bem <- sf::st_intersection(bem,wkt_filter)
110+
bem <- sf::st_intersection(bem, sf::st_as_sfc(wkt_filter, crs = sf::st_crs(albers)))
111111
}
112112
#Restructure bem while waiting for real info
113113
bem <- rename_geometry(bem, "Shape")
@@ -141,7 +141,7 @@ read_wetlands <- function(dsn = NULL, layer = "FWA_WETLANDS_POLY", wkt_filter =
141141
bcdata::select(GEOMETRY)
142142

143143
if(length(wkt_filter) > 0 ){
144-
wl_query <- wl_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
144+
wl_query <- wl_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
145145
}
146146
wetlands <- bcdata::collect(wl_query)
147147

@@ -178,7 +178,7 @@ read_rivers <- function(dsn = NULL, layer = "FWA_RIVERS_POLY", wkt_filter = cha
178178
bcdata::select(GEOMETRY)
179179

180180
if(length(wkt_filter) > 0 ){
181-
rivers_query <- rivers_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
181+
rivers_query <- rivers_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
182182
}
183183
rivers <- bcdata::collect(rivers_query)
184184

@@ -214,7 +214,7 @@ read_lakes <- function(dsn = NULL, layer = "FWA_LAKES_POLY", wkt_filter = chara
214214
bcdata::select(GEOMETRY)
215215

216216
if(length(wkt_filter) > 0 ){
217-
lakes_query <- lakes_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
217+
lakes_query <- lakes_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
218218
}
219219
lakes <- bcdata::collect(lakes_query)
220220

@@ -252,7 +252,7 @@ read_glaciers <- function(dsn = NULL, layer = "BTM_PLU_V1", wkt_filter = charac
252252
bcdata::select(GEOMETRY)
253253

254254
if(length(wkt_filter) > 0 ){
255-
glaciers_query <- glaciers_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
255+
glaciers_query <- glaciers_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
256256
}
257257
glaciers <- bcdata::collect(glaciers_query)
258258

@@ -288,7 +288,7 @@ read_ccb <- function(dsn = NULL, layer = "CNS_CUT_BL_polygon", wkt_filter = cha
288288
bcdata::select(HARVEST_YEAR)
289289

290290
if(length(wkt_filter) > 0 ){
291-
ccb_query <- ccb_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
291+
ccb_query <- ccb_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
292292
}
293293
ccb <- bcdata::collect(ccb_query)
294294

@@ -362,7 +362,7 @@ read_fire <- function(dsn = NULL, layer = "WHSE_LAND_AND_NATURAL_RESOURCE.PROT_H
362362
bcdata::select(SHAPE)
363363

364364
if(length(wkt_filter) > 0 ){
365-
wl_query <- wl_query |> bcdata::filter(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter)))
365+
wl_query <- wl_query |> bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sfc(wkt_filter))))
366366
}
367367
fire <- bcdata::collect(wl_query)
368368

@@ -424,5 +424,3 @@ read_tsa <- function(tsa_name, Skeena_boundary=TRUE){
424424

425425
return(aoi)
426426
}
427-
428-

scripts/geodata.R

+1-1
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,6 @@ ifelse(
5454
"Wetlands id found in search does not match the one in the package"
5555
)
5656
wetlands <- bcdata::bcdc_query_geodata(record = wetlands_id) |>
57-
bcdata::filter(bcdata::INTERSECTS(sf::st_as_sf(testing_aoi)))
57+
bcdata::filter(local(bcdata::INTERSECTS(sf::st_as_sf(testing_aoi))))
5858

5959
#

0 commit comments

Comments
 (0)