R - преобразовать геометрию WKB в представление WKT

Кто-нибудь знает пакет / функцию в R, которая принимает хорошо известный двоичный файл (WKB) в качестве входных данных и возвращает его представление хорошо известного текста (WKT)?

3 ответа

Вы можете конвертировать между WKB и WKT, используя пакеты rgeos и wkb. Пример:

# load packages
library(rgeos)
library(wkb)

# create raw vector representing WKB geometry
wkb <- hex2raw("0101000000cdcccccc170d2241b81e859bcb405241")

# convert WKB to Spatial object
obj <- readWKB(wkb)

# convert Spatial object to WKT
wkt <- writeWKT(obj, byid = TRUE)

Вы не предоставили ни одного воспроизводимого примера с кодом и данными, но я думаю, что этот код может вам помочь.

library(rgdal)
library(wkb)
library(rgeos)

wkb <- readBin("geometry.wkb", what = "raw", n = 1000)
wkb <- list(wkb)
writeWKT(readWKB(wkb))

Эта статья очень интересна:https://r-spatial.org/r/2016/09/01/bm.html . В этой статье сравниваются три функции:

  1. sf::st_as_sfc(geometry, pureR = TRUE)
  2. wkb::readWKB(geometry)

Для этой статьи более быстрая функция для преобразования wkb в wkt — это sf::st_as_sfc(geometry)без аргумента pureR.

Другие вопросы по тегам