convert_sf2qgis.R 968 B

1234567891011121314151617181920212223242526272829303132
  1. #' Konverteerimine: 'sf' to 'qgis'
  2. #'
  3. #' Funktsioon konverteerib geomeetria 'sf' kujul 'qgis_object', et oleks rakendatavad QGIS >= 3.14 tööriist \url{https://github.com/paleolimbot/qgisprocess}. Vaata veel \url{https://r-spatial.github.io/sf/}, \code{\link[sf]{st_is_valid}}.
  4. #' @param x object of class 'sf', 'sfc' or 'sfg'.
  5. #' @return The object with class 'qgis_object'.
  6. #' @seealso [qgisprocess::qgis_run_algorithm()], [qgisprocess::qgis_output()], [sf::st_is_valid()], [sf::read_sf()]
  7. #' @keywords sf, qgis
  8. #' @export
  9. #' @examples
  10. #' \dontrun{
  11. #'
  12. #' class(pk)
  13. #' # > [1] "sf" ...
  14. #'
  15. #' convert_sf2qgis(x = pk)
  16. #'
  17. #' }
  18. convert_sf2qgis <- function(x = NULL) {
  19. if (!is.null(x) && sf::st_is_valid(x)) {
  20. result <- qgisprocess::qgis_run_algorithm(
  21. "native:buffer",
  22. INPUT = x,
  23. DISTANCE = 1e-16,
  24. DISSOLVE = TRUE,
  25. .quiet = TRUE
  26. )
  27. # sf::read_sf(qgisprocess::qgis_output(result, "OUTPUT"))
  28. result
  29. } else {
  30. NULL
  31. }
  32. }