Dear Xiang,

I've not had a chance to try your code, but your example probably won't work with the CRS set to WGS84. The buffer will use the units of the coordinate system, so degrees, which will be far too large for the bristol_zones example.

Assuming bristol_zones are in the UK, you need to reproject to BNG - 27700.

Also I am not sure whether bristol_zones from spDataLarge are in sp or sf format.

Once those are addressed - I see no reason why the example in the Stack Exchange should work.

Best wishes,
Nick.

On 19/02/2024 10:04, Xiang Ye via R-sig-Geo wrote:
Dear community,

I am learning some basic geometry operation functions of sf package including 
st_buffer().

It seems there should be no wonder if I provide a negative value to the dist 
argument in st_buffer(), I should expect an inward/shrinking buffer zone (I 
also followed here: 
https://gis.stackexchange.com/questions/392505/can-i-use-r-to-do-a-buffer-inside-polygons-shrink-polygons-negative-buffer).
 However, it turn out to be as long as I provide a negative value, the output 
will be an empty geometry:

library(sf)
library(spDataLarge)
st_geometry(bristol_zones[1, ]) -> a    # a is the exemplary data set

a
Geometry set for 1 feature
Geometry type: MULTIPOLYGON
Dimension:     XY
Bounding box:  xmin: -2.534502 ymin: 51.40487 xmax: -2.488435 ymax: 51.43478
Geodetic CRS:  WGS 84
MULTIPOLYGON (((-2.510462 51.42878, -2.507985 5...
st_buffer(a, 100)
Geometry set for 1 feature
Geometry type: POLYGON
Dimension:     XY
Bounding box:  xmin: -2.536248 ymin: 51.40393 xmax: -2.486907 ymax: 51.43598
Geodetic CRS:  WGS 84
POLYGON ((-2.517834 51.43188, -2.518218 51.4318...
st_buffer(a, -100)
Geometry set for 1 feature  (with 1 geometry empty)
Geometry type: POLYGON
Dimension:     XY
Bounding box:  xmin: NA ymin: NA xmax: NA ymax: NA
Geodetic CRS:  WGS 84
POLYGON EMPTY

So I would like to know if it is possible to create inward buffer zones with 
st_buffer()? If st_buffer() is not designed to perform this, what is the best 
alternative?

Thank you, and have a great start of the week!

$B3pfF(B YE, Xiang
THINKING SPATIALLY<http://www.linkedin.com/in/spatialyexiang>.
Ph.D. in Spatial Statistics

        [[alternative HTML version deleted]]

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

--
Nick Bearman
+44 (0) 7717745715
n...@geospatialtrainingsolutions.co.uk

Please let me know if I can make any adjustments related to disability or 
neurodivergence to improve how we interact.

Due to my own life/work balance, you may get emails from me outside of normal 
working hours. Please do not feel any pressure to respond outside of your own 
working pattern.

_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-sig-geo

Reply via email to