Nothing
as.data.frame()
for s2_cell()
to comply with new wk
version and the latest release of R (#207).#include <cstdint>
to an Abseil header to fix compilation with
gcc13 (#209, #210).s2_convex_hull()
and s2_convex_hull_agg()
(@spiry34, #150,
#151, #163).max_distance
argument to s2_closest_edges()
, making
distance-constrained k-nearest neighbours possible (#125, #156, #162).s2_point_on_surface()
implementation for polygons
(@kylebutts, #152, #161)s2_cell_union()
vector class to represent cell coverings and
operators to generate them from an s2 geography vector (e.g.,
s2_covering_cell_ids()
). Cell unions are useful as compact representations
of spherical geometry and can be used like a bounding box to determine
a possible intersection with one or more geographies (#85, #94, #164).s2_union_agg()
more efficient using a recursive merge strategy
(#103, #165).-O0
(#167, #172).s2_prepared_dwithin()
and fixed s2_dwithin_matrix()
such that it
efficiently uses the index (#157, #174).s2_lnglat()
and s2_point()
to use wk::xy()
(a record-style
vctr) to represent point coordinates. This is much faster than the previous
representation which relied on list()
of external pointers (#181, #159).planar
and tessellate_tol_m
to s2_as_text()
,
s2_as_binary()
. Use planar = TRUE
and set tessellate_tol_m
to the
maximum error for your use-case to automatically subdivide edges to
preserve or "straight" lines in Plate carree projection on import (#182).planar
and tessellate_tol_m
to s2_geog_from_text()
, and
s2_geog_from_wkb()
. Use planar = TRUE
and set tessellate_tol_m
to the
maximum error for your use-case to automatically subdivide edges to
ensure or "straight" lines in Plate carree projection on export (#182).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.
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.