|
|
@@ -50,10 +50,28 @@ pk_sellest_alustame_db_loomist <- function(pk = NULL, obj = NULL, conf = NULL) {
|
|
|
|
|
|
## 1. Piirjoone salvestamine
|
|
|
pk <- sf::st_transform(pk, 3301)
|
|
|
- # write to postgis
|
|
|
+ # Write to gpkg and check validity
|
|
|
+ sf::write_sf(pk, dsn = vars$tmp_gpkg_file, layer = vars$conf$gpkg_table, driver = "gpkg", fid_column_name = "fid", delete_dsn = T)
|
|
|
+ # Geomeetria parandamine
|
|
|
+ # ruut::qgis_algorithm_search_by_word("fix")
|
|
|
+ algorithm <- "native:fixgeometries"
|
|
|
+ input <- vars$tmp_gpkg_file_input_1 # ajutine fail
|
|
|
+ output <- vars$tmp_gpkg_file_output_2 # ajutine fail
|
|
|
+ str <- sprintf("{ 'INPUT' : '%s', 'OUTPUT' : '%s' }", input, output)
|
|
|
+ cmd <- ruut::construct_qgis_output_result_to_better_format(str = str, algorithm = algorithm)
|
|
|
+ system(cmd)
|
|
|
+ # Write to postgis
|
|
|
ruut::db_create_new_schema(conf = conf)
|
|
|
conn <- ruut::db_connect(conf = conf)
|
|
|
- sf::write_sf(pk, dsn = conn, layer = c(conf$schema, "a00_piir"), driver = "PostgreSQL", fid_column_name = "id", delete_dsn = F)
|
|
|
+ # Eemaldame üleliigsed veerud
|
|
|
+ # ruut::qgis_algorithm_search_by_word("Drop")
|
|
|
+ algorithm <- "native:deletecolumn"
|
|
|
+ input <- vars$tmp_gpkg_file_input_2
|
|
|
+ conf$table <- "a00_piir"
|
|
|
+ output <- ruut::construct_to_gpkg_output_postgres_str(conf = conf, geometry_field = "geom", geometry_type = "Polygon", srid = 3301, checkPrimaryKeyUnicity = FALSE, key = "id")
|
|
|
+ cmd <- sprintf("qgis_process run %s --COLUMN='fid' --INPUT='%s' --OUTPUT='%s' ", algorithm, input, output)
|
|
|
+ system(cmd)
|
|
|
+ # sf::write_sf(pk, dsn = conn, layer = c(conf$schema, "a00_piir"), driver = "PostgreSQL", fid_column_name = "id", delete_dsn = F)
|
|
|
|
|
|
## 2. Piirikasti salvestamine
|
|
|
## konstrueerime EXTENT, HSPACING ja VSPACING väärtused piirikasti konstrueerimiseks.
|