These functions are optimised for graphics output,
which in R require flat coordinate structures. See
graphics::points()
, graphics::lines()
,
and graphics::polypath()
for how to send these
to a graphics device, or grid::pointsGrob()
,
grid::linesGrob()
, and grid::pathGrob()
for how
to create graphical objects using this output.
wkb_coords(wkb, sep_na = FALSE)
wkt_coords(wkt, sep_na = FALSE)
A list()
of raw()
vectors, such as that
returned by sf::st_as_binary()
.
Use TRUE
to separate geometries and linear
rings with a row of NA
s. This is useful for generating
output that can be fed directly to graphics::polypath()
or graphics::lines()
without modification.
A character vector containing well-known text.
A data.frame with columns:
feature_id
: The index of the top-level feature
part_id
: The part identifier, guaranteed to be unique for every simple geometry
(including those contained within a multi-geometry or collection)
ring_id
: The ring identifier, guaranteed to be unique for every ring.
x
, y
, z
, m
: Coordinaate values (both absence and nan
are recorded
as NA
)
text <- c("LINESTRING (0 1, 19 27)", "LINESTRING (-1 -1, 4 10)")
wkt_coords(text)
#> # A tibble: 4 × 7
#> feature_id part_id ring_id x y z m
#> <int> <int> <int> <dbl> <dbl> <dbl> <dbl>
#> 1 1 1 0 0 1 NA NA
#> 2 1 1 0 19 27 NA NA
#> 3 2 2 0 -1 -1 NA NA
#> 4 2 2 0 4 10 NA NA
wkt_coords(text, sep_na = TRUE)
#> # A tibble: 5 × 7
#> feature_id part_id ring_id x y z m
#> <int> <int> <int> <dbl> <dbl> <dbl> <dbl>
#> 1 1 1 0 0 1 NA NA
#> 2 1 1 0 19 27 NA NA
#> 3 NA NA NA NA NA NA NA
#> 4 2 2 0 -1 -1 NA NA
#> 5 2 2 0 4 10 NA NA