Extend BirdFlow extent
Arguments
- x
A single BirdFlow object, or one or more paths to BirdFlow objects stored as either hdf5 or rds files.
- y
An extent or an object that yields an extent when passed to
terra::ext()
.
Value
If x
is a BirdFlow model object extend_birdflow()
returns an
extended version of the same model. If x
is the path to one or more
BirdFlow models than those files are modified and a logical vector of the
same length is returned with TRUE for success.
Details
Models can only be extended beyond their original extent, however if they have already been extended it is possible to "extend" them again to a smaller extent as long as it is also larger than the original extent.
See also
shrink_birdflow()
returns a model to it's original extent.
Examples
bf <- BirdFlowModels::amewoo
# Define extended extent for example
e <- ext(bf)
buffer <- 3 * res(bf)
e[1] <- e[1] - buffer[1]
e[2] <- e[2] + buffer[1]
e[3] <- e[3] - buffer[2]
e[4] <- e[4] + buffer[2]
bf2 <- extend_birdflow(bf, e)
bf3 <- shrink_birdflow(bf2)
# Compare extents
data.frame(item = names(as.vector(ext(bf))),
initial = as.vector(ext(bf)),
extended = as.vector(ext(bf2)),
shrunk = as.vector(ext(bf3)))
#> item initial extended shrunk
#> xmin xmin -2550000 -3000000 -2550000
#> xmax xmax 2100000 2550000 2100000
#> ymin ymin -1650000 -2100000 -1650000
#> ymax ymax 1650000 2100000 1650000
if (FALSE) { # \dontrun{
# Plot
library(terra)
plot_distr(get_distr(bf, 1), bf)
plot_distr(get_distr(bf2, 1), bf2)
plot_distr(get_distr(bf3, 1), bf3)
} # }