quadmesh
quadmesh copied to clipboard
gg to rgl
library(quadmesh)
library(ggplot2)
library(raster)
r <- raster::raster(volcano)
tb <- as.data.frame(r, xy = TRUE)
#png("file.png", width = 100, height = 100)
print(ggplot(tb, aes(x, y, fill = layer))+ geom_raster())
#dev.off()
ggsave("file.png")
r <- raster::setExtent(r, raster::extent(0, nrow(r), 0, ncol(r)))
b <- raster::brick("file.png")
r1 <- aggregate(b, fact = 8)
v <- values(r1)
r1 <- raster::setValues(r1[[1]], (v[,1]+ v[,2]^2 + v[,2]^3) / 2^24)
rgl::rgl.clear()
rgl::shade3d(quadmesh(r1, texture = b))
rgl::aspect3d(1, 1, 0.2)
rgl::rglwidget()