Resizes a matrix (preserving contents) by specifying the desired output dimensions or a scaling factor.
resize_matrix(
heightmap,
scale = 1,
width = NULL,
height = NULL,
method = "bilinear"
)
The elevation matrix.
Default `0.5`. The amount to scale down the matrix. Scales using bilinear interpolation.
Default `NULL`. Alternative to `scale` argument. The desired output width. If `width` is less than 1, it will be interpreted as a scaling factor– e.g. 0.5 would halve the resolution for the width.
Default `NULL`. Alternative to `scale` argument. The desired output width. If `height` is less than 1, it will be interpreted as a scaling factor– e.g. 0.5 would halve the resolution for the height.
Default `bilinear`. Method of interpolation. Alteratively `cubic`, which is slightly smoother, although current implementation slightly scales the image.
#Reduce the size of the monterey bay dataset by half
if(run_documentation()) {
montbaysmall = resize_matrix(montereybay, scale=0.5)
montbaysmall %>%
sphere_shade() %>%
plot_map()
}
if(run_documentation()) {
#Reduce the size of the monterey bay dataset from 540x540 to 100x100
montbaysmall = resize_matrix(montereybay, width = 100, height = 100)
montbaysmall %>%
sphere_shade() %>%
plot_map()
}
if(run_documentation()) {
#Increase the size of the volcano dataset 3x
volcanobig = resize_matrix(volcano, scale=3)
volcanobig %>%
sphere_shade() %>%
plot_map()
}
if(run_documentation()) {
#Increase the size of the volcano dataset 2x, using cubic interpolation
volcanobig = resize_matrix(volcano, scale=3, method="cubic")
volcanobig %>%
sphere_shade() %>%
plot_map()
}