Learn R Programming

stplanr (version 0.4.0)

buff_geo: Create a buffer of n metres for non-projected 'geographical' spatial data

Description

Solves the problem that buffers will not be circular when used on non-projected data.

Usage

buff_geo(shp, width, ...)

Arguments

shp

A spatial object with a geographic CRS (e.g. WGS84) around which a buffer should be drawn

width

The distance (in metres) of the buffer (when buffering sp objects)

...

Arguments passed to the buffer (see ?rgeos::gBuffer or ?sf::st_buffer for details)

See Also

Other geo: bbox_scale, crs_select_aeq, decode_gl, gclip, geo_bb_matrix, geo_bb, mapshape_available, mapshape, quadrant, reproject

Examples

Run this code
# NOT RUN {
r <- routes_fast[1:3, ]
buff <- buff_geo(r, width = 100)
plot(buff)
plot(r, add = TRUE)
# Test it works the same on projected data
shp <- sp::spTransform(r, sp::CRS("+init=epsg:27700"))
buff2 <- buff_geo(shp, 50) # test if it works the same on projected data
plot(buff2)
plot(r, add = TRUE) # note they do not show
buff3 <- sp::spTransform(buff2, sp::CRS("+init=epsg:4326"))
plot(buff)
plot(buff3, add = TRUE, col = "black")
# }

Run the code above in your browser using DataLab