STRICT_R_HEADERS
(@eddelbuettel, #118).s2_centroid_agg()
did not behave like a normal point in distance calculations (#119, #121).s2_projection_filter()
and s2_unprojection_filter()
to expose the S2 edge tessellator, which can be used to make Cartesian or great circle assumptions of line segments explicit by adding points where necessary (#115).s2_cell()
vector class to expose a subset of the S2 indexing system to R users (#85, #114).s2_closest_edges()
to make k-nearest neighbours calculation possible on the sphere (#111, #112).s2_interpolate()
, s2_interpolate_normalized()
, s2_project()
, and s2_project_normalized()
to provide linear referencing support on the sphere (#96, #110).dimensions
to s2_options()
to constrain the output dimensions of a boolean or rebuild operation (#105, #104, #110).s2_is_valid()
and s2_is_valid_detail()
to help find invalid spherical geometries when importing data into S2 (#100).s2_union()
can now handle MULTIPOLYGON geometries with overlapping rings in addition to other invalid polygons. s2_union()
can now sanitize almost any input to be valid spherical geometry with minimal modification (#100, #99).s2_union_agg()
to s2_coverage_union_agg()
to make clear that the function only works when the individual geometries do not have overlapping interiors. s2_union_agg()
was replaced with a true aggregate union that can handle unions of most geometries (#100, #97).s2_rebuild_agg()
to match s2_union_agg()
. Like s2_rebuild()
, s2_rebuild_agg()
collects the edges in the input and builds them into a feature, optionally snapping or simplifying vertices in the process (#100).s2_options()
, which now uses strings rather than numeric codes to specify boolean operation options, geography construction options, and builder options (#70).s2_rebuild()
and s2_simplify()
, which wrap the S2 C++ S2Builder
class to provide simplification and fixing of invalid geographies (#70).s2_latlng()
to s2_lnglat()
to keep axis order consistent throughout the package (#69).s2_bounds_cap()
and s2_bounds_rect()
to compute bounding areas using geographic coordinates (@edzer, #63).s2_*_matrix()
predicates now efficiently use indexing to compute the results of many predicate comparisons (#61).This version is a complete rewrite of the former s2 CRAN package, entirely backwards incompatible with previous versions.