| 12345678910111213141516171819202122232425262728293031323334353637 |
- #' Funktsioon: epk10t kaardiruutude nimekiri
- #' Vajalik ortofotode allalaadimiseks. Nimekiri käib piirkonna
- #' EPSG:3301 piirikasti kohta
- pk_epk10t_ruutude_nimekiri <- function(obj) {
- # obj - objekti nimetus (näiteks: valga)
- conn <- ruut::db_connect()
- q <- sprintf("SELECT * FROM %s.%s_bb", conf$schema, tolower(obj))
- cat(sprintf("\n-----------------\n%s\n\n", q))
- sp <- sf::st_read(conn, query = q)
- ## epk10t ruutvõrgustiku lugemine
- # ruut::qgis_algorithm_search_by_word(str = "joinattributesbylocation")
- algorithm <- "native:joinattributesbylocation"
- # cat(qgisprocess::qgis_show_help(algorithm = algorithm))
- result <- qgisprocess::qgis_run_algorithm(
- algorithm = algorithm,
- DISCARD_NONMATCHING = 1,
- INPUT = 'postgres://dbname=\'data\' host=localhost port=6432 user=\'osm\' sslmode=disable password=\'osm\' key=\'fid\' srid=4326 type=Polygon checkPrimaryKeyUnicity=\'1\' table=\"(SELECT * FROM maaamet.epk10t )\" (geometry)',
- JOIN = sprintf('postgres://dbname=\'data\' host=localhost port=6432 user=\'osm\' sslmode=disable password=\'osm\' key=\'fid\' srid=4326 type=Polygon checkPrimaryKeyUnicity=\'1\' table=\"(SELECT * FROM xxx_artikkel_210127.%s_bb )\" (geometry)', obj),
- JOIN_FIELDS = c("id"),
- METHOD = 0,
- PREDICATE = c(0, 1),
- PREFIX = "",
- OUTPUT = qgisprocess::qgis_tmp_vector(),
- NON_MATCHING = qgisprocess::qgis_tmp_vector(),
- .quiet = TRUE
- )
- result
- ## !!!!!!!! NB !!!!!!!!
- ## Siin on 2 objekti väljundiks 'OUTPUT' ja 'NON_MATCHING'. Peame valima
- ## ainult ühe ja teisendama.
- pk_grid <- sf::read_sf(qgisprocess::qgis_output(result, "OUTPUT"))
- sf::st_geometry(pk_grid) %>% plot()
- pk_grid$nr
- }
- # pk_epk10t_ruutude_nimekiri(obj = "valga")
|