vcrop: Virtual grid modification

View source: R/vaster.R

vcropR Documentation

Virtual grid modification

Description

To modify a grid is to align an extent to the grid origin. Modification includes reducing or extending the area covered in either dimension. This implies a new extent, snapped to the grain of the origin grid, and a new dimension (ncol, nrow).

Usage

vcrop(x, dimension, extent = NULL, ..., snap = "out")

Arguments

x

extent of candidate grid (vector of xmin, xmax, ymin, ymax)

dimension

integer ncol, nrow

extent

numeric extent xmin,xmax,ymin,ymax

...

ignored

snap

one of "out" (default), "near", or "in"

Details

This works for any grid: the input extent can be within the original, an extension of the original, or completely non-intersecting the original grid.

Value

A list with two components:

extent

numeric vector (xmin, xmax, ymin, ymax) - the new extent, snapped to grid alignment

dimension

integer vector (ncol, nrow) - the dimension of the modified grid

See Also

align_extent() for just the extent snapping, extent_dimension() for just the dimension calculation

Examples

## any arbitrary extent
(x <- c(sort(runif(2, -180, 180)), sort(runif(2, -90, 90))))

vcrop(x, c(360, 180), c(-180, 180, -90, 90))

## crop to a smaller region
vcrop(c(0, 10, 0, 10), c(360, 180), c(-180, 180, -90, 90))

## extend beyond original (snapped to grid)
vcrop(c(-200, 200, -100, 100), c(360, 180), c(-180, 180, -90, 90))

vaster documentation built on March 10, 2026, 5:08 p.m.