Skip to content

Commit

Permalink
address r-spatial#2442
Browse files Browse the repository at this point in the history
  • Loading branch information
goergen95 committed Sep 24, 2024
1 parent 35f5f8b commit c4e5933
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 1 deletion.
2 changes: 2 additions & 0 deletions NEWS.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

* fix build failure with GDAL < 3.4.0 #2436

* `st_simplify()` now accepts feature-wise tolerance values when `s2` is switched on #2442

# version 1.0-17

* add `st_transform()` method for `bbox` objects; this uses OGRCoordinateTransformation::TransformBounds(), densifying first and antemeridian proof; #2415
Expand Down
4 changes: 3 additions & 1 deletion R/geom-transformers.R
Original file line number Diff line number Diff line change
Expand Up @@ -286,7 +286,9 @@ st_simplify.sfc = function(x, preserveTopology, dTolerance = 0.0) {
if (ll && sf_use_s2()) {
if (!missing(preserveTopology) && isFALSE(preserveTopology))
warning("argument preserveTopology cannot be set to FALSE when working with ellipsoidal coordinates since the algorithm behind st_simplify always preserves topological relationships")
st_as_sfc(s2::s2_simplify(x, dTolerance), crs = st_crs(x))

simplify <- function(x, dTolerance) st_as_sfc(s2::s2_simplify(x, dTolerance))
st_as_sfc(mapply(simplify, x, dTolerance), crs = st_crs(x))
} else {
if (missing(preserveTopology)) {
preserveTopology = FALSE
Expand Down
2 changes: 2 additions & 0 deletions tests/gdal_geom.R
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ x = st_convex_hull(nc)

x = st_simplify(nc_tr, dTolerance = 1e4)

x = st_simplify(nc_tr, dTolerance = rep(1e4, nrow(nc_tr)))

x = st_simplify(nc_tr, preserveTopology = TRUE)

if (sf:::CPL_geos_version() >= "3.4.0")
Expand Down

0 comments on commit c4e5933

Please sign in to comment.