R/toptail.R
buff_geo.RdSolves the problem that buffers will not be circular when used on non-projected data.
buff_geo(shp, width, ...)
| 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 |
Returns a
r <- routes_fast[1:3, ] buff <- buff_geo(r, width = 100)#>plot(buff)#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'plot(r, add = TRUE)#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'# 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)#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'plot(r, add = TRUE) # note they do not show#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'plot(buff3, add = TRUE, col = "black")#> Error in as.double(y): cannot coerce type 'S4' to vector of type 'double'