1
2setMethod("makeTiles", signature(x="SpatRaster"),
3	function(x, y, filename="tile_.tif", ...) {
4		stopifnot(inherits(y, "SpatRaster"))
5		y <- y[[1]]
6		if (!hasValues(y)) values(y) <- 1:ncell(y)
7		y <- crop(y, x, snap="out")
8		v <- as.polygons(y)
9		#} else if (inherits(y, "SpatVector")) {
10		#	if (ncol(y) > 0) {
11		#		v <- aggregate(y, colnames(y)[1])
12		#	} else {
13		#		v <- y
14		#		values(v) <- data.frame(tile=1:nrow(v))
15		#	}
16		#}
17		d <- unlist(as.data.frame(v))
18		filename <- filename[1]
19		filename <- filename[!is.na(filename)]
20		filename <- filename[filename != ""]
21		if (length(filename) == 0) error("tiler", "no valid filename supplied")
22		e <- paste0(".", tools::file_ext(filename))
23		f <- tools::file_path_sans_ext(filename)
24		ff <- paste0(f, d, e)
25
26		for (i in 1:length(v)) {
27			crop(x, v[i,], filename=ff[i], ...)
28		}
29		return (ff)
30	}
31)
32
33
34setMethod("vrt", signature(x="character"),
35	function(x, filename="", overwrite=FALSE) {
36		opt <- spatOptions(filename, overwrite=overwrite)
37		r <- rast()
38		r@ptr <- r@ptr$make_vrt(x, opt)
39		messages(r)
40	}
41)
42
43