diff --git a/R/calculate_vp.R b/R/calculate_vp.R index 20ef4d04..499b6b82 100644 --- a/R/calculate_vp.R +++ b/R/calculate_vp.R @@ -198,7 +198,7 @@ #' file.copy(pvolfile_source, pvolfile) #' #' # Calculate the profile -#' if (requireNamespace("vol2birdR", quietly = TRUE)) { +#' if (rlang::is_installed("vol2birdR", version = "1.3.0", compare = ">=")) { #' vp <- calculate_vp(pvolfile) #' #' # Get summary info diff --git a/R/map.R b/R/map.R index 88d0f6cd..13ae6b67 100644 --- a/R/map.R +++ b/R/map.R @@ -178,36 +178,27 @@ map.ppi <- function( # extract the scan parameter data <- do.call(function(y) x$data[y], list(param)) - #wgs84 <- sp::CRS("+proj=longlat +datum=WGS84") - #epsg3857 <- sp::CRS("+init=epsg:3857") # this is the google mercator projection - wgs84 <- sp::CRS(SRS_string = sf::st_crs(4326)$wkt) - epsg3857 <- sp::CRS(SRS_string = sf::st_crs(3857)$wkt) - - mybbox <- - sp::spTransform( - sp::SpatialPoints(t(data@bbox), proj4string = data@proj4string), - epsg3857 - ) - - mybbox.wgs <- - sp::spTransform( - sp::SpatialPoints(t(data@bbox), proj4string = data@proj4string), - wgs84 - ) + bbox_points <- sf::st_as_sf( + data.frame(x = data@bbox[1, ], y = data@bbox[2, ]), + coords = c("x", "y"), + crs = sf::st_crs(data) + ) + mybbox <- sf::st_coordinates(sf::st_transform(bbox_points, 3857)) + mybbox.wgs <- sf::st_coordinates(sf::st_transform(bbox_points, 4326)) e <- raster::extent(mybbox.wgs) r <- raster::raster( raster::extent(mybbox), ncol = data@grid@cells.dim[1] * .9, nrow = data@grid@cells.dim[2] * .9, - crs = sp::CRS(sp::proj4string(mybbox)) + crs = sf::st_crs(3857)$wkt ) # convert to google earth mercator projection - data <- as.data.frame(sp::spTransform( - methods::as(data, "SpatialPointsDataFrame"), - epsg3857 - )) + data <- methods::as(data, "SpatialPointsDataFrame") %>% + sf::st_as_sf() %>% + sf::st_transform(3857) + data <- cbind(sf::st_drop_geometry(data), sf::st_coordinates(data)) # bring z-values within plotting range index <- which(data$z < zlim[1]) diff --git a/man/calculate_vp.Rd b/man/calculate_vp.Rd index 58d3ff24..3622d605 100644 --- a/man/calculate_vp.Rd +++ b/man/calculate_vp.Rd @@ -255,7 +255,7 @@ pvolfile <- paste0(tempdir(),"/volume.h5") file.copy(pvolfile_source, pvolfile) # Calculate the profile -if (requireNamespace("vol2birdR", quietly = TRUE)) { +if (rlang::is_installed("vol2birdR", version = "1.3.0", compare = ">=")) { vp <- calculate_vp(pvolfile) # Get summary info diff --git a/tests/testthat/test-map.R b/tests/testthat/test-map.R index dd08ff99..ce51977a 100644 --- a/tests/testthat/test-map.R +++ b/tests/testthat/test-map.R @@ -1,3 +1,11 @@ +test_that("map() returns a ggplot", { + skip_if_no_mapping() + ppi <- project_as_ppi(example_scan) + basemap <- rosm::osm.types()[1] + + expect_s3_class(map(ppi, map = basemap), "ggplot") +}) + test_that("map() returns error on incorrect parameters", { skip_if_no_mapping() skip_if_offline()