convert_sf2qgis.R 998 B

12345678910111213141516171819202122232425262728293031
  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. #' ## Not run:
  11. #' ## class(pk)
  12. #' ## > [1] "sf" ...
  13. #' ##
  14. #' ## convert_sf2qgis(x = pk)
  15. #' ##
  16. #' ## End(**Not run**)
  17. convert_sf2qgis <- function(x = NULL) {
  18. if (!is.null(x) && sf::st_is_valid(x)) {
  19. result <- qgisprocess::qgis_run_algorithm(
  20. "native:buffer",
  21. INPUT = x,
  22. DISTANCE = 1e-16,
  23. DISSOLVE = TRUE,
  24. .quiet = TRUE
  25. )
  26. # sf::read_sf(qgisprocess::qgis_output(result, "OUTPUT"))
  27. result
  28. } else {
  29. NULL
  30. }
  31. }