|
|
@@ -14,8 +14,8 @@ pk_piir <- function(obj) {
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------
|
|
|
-## Funktsioon: piirkonna piiri piirikasti (boundary box) loomine
|
|
|
-create_pk_piir_bb <- function(obj) {
|
|
|
+## Funktsioon: piirkonna piiri katvate epk10t (5x5km) ruutude loomine
|
|
|
+create_pk_epk10t <- function(obj) {
|
|
|
# obj - objekti nimetus (näiteks: valga)
|
|
|
# ruut::qgis_algorithm_search_by_word(str = "extract")
|
|
|
algorithm <- "native:extractbylocation"
|
|
|
@@ -30,17 +30,17 @@ create_pk_piir_bb <- function(obj) {
|
|
|
)
|
|
|
result
|
|
|
}
|
|
|
-# create_pk_piir_bb(obj = objektid[i])
|
|
|
+# create_pk_epk10t(obj = objektid[i])
|
|
|
|
|
|
-## Funktsioon: piirkonna piiri piirikasti (boundary box) lugemine
|
|
|
-pk_piir_bb <- function(obj) {
|
|
|
+## Funktsioon: piirkonna piiri katvate epk10t (5x5km) ruutude lugemine
|
|
|
+pk_epk10t <- function(obj) {
|
|
|
# obj - objekti nimetus (näiteks: valga)
|
|
|
conn <- ruut::db_connect()
|
|
|
q <- sprintf("SELECT * FROM %s.%s_epk10t", conf$schema, tolower(obj))
|
|
|
cat(sprintf("\n-----------------\n%s\n\n", q))
|
|
|
sf::st_read(conn, query = q)
|
|
|
}
|
|
|
-# pk_piir_bb(obj = "valga")
|
|
|
+# pk_epk10t(obj = "valga")
|
|
|
|
|
|
|
|
|
# -----------------------------------------------------------------------
|
|
|
@@ -67,3 +67,159 @@ create_epk200t_bb <- function() {
|
|
|
cat(sprintf("\n-----------------\nAlgoritm: %s valmis.\n\n", algorithm))
|
|
|
# result
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# ---------------------------------------------------------------------
|
|
|
+## Grdid genereerimine.
|
|
|
+#' Funktsioonid gnereerivad kogu Eestit (s.o maaameti 100x100 km kogu Eestit katvate
|
|
|
+#' ruudstikega määratud ala). Ruutvõrgustik genereeritakse ruutudele 1x1, 5x5 ja
|
|
|
+#' 100x100 km.
|
|
|
+
|
|
|
+# 1. 100x100 km ruudustik
|
|
|
+create_epk200t_grid <- function() {
|
|
|
+ # ruut::qgis_algorithm_search_by_word(str = "v.mkgrid")
|
|
|
+ algorithm <- "grass7:v.mkgrid"
|
|
|
+ # cat(qgisprocess::qgis_show_help(algorithm = algorithm))
|
|
|
+ result <- qgisprocess::qgis_run_algorithm(
|
|
|
+ algorithm = algorithm,
|
|
|
+ "-h" = 0,
|
|
|
+ "-p" = 0,
|
|
|
+ GRASS_OUTPUT_TYPE_PARAMETER = 0,
|
|
|
+ GRASS_REGION_PARAMETER = "",
|
|
|
+ GRASS_VECTOR_DSCO = "",
|
|
|
+ GRASS_VECTOR_EXPORT_NOCAT = 0,
|
|
|
+ GRASS_VECTOR_LCO = "",
|
|
|
+ angle = 0,
|
|
|
+ box = "100000,100000",
|
|
|
+ breaks = 0,
|
|
|
+ coordinates = "300000,6300000 [EPSG:3301]",
|
|
|
+ grid = "4,5",
|
|
|
+ map = "tmp/epk200t_grrid.gpkg",
|
|
|
+ position = 0,
|
|
|
+ .quiet = TRUE
|
|
|
+ )
|
|
|
+ # result
|
|
|
+ epk200t_grid <- sf::read_sf(qgis_output(result, "map"))
|
|
|
+ sf::st_geometry(epk200t_grid) %>% plot()
|
|
|
+ conf <- ruut::get_config()
|
|
|
+ conf$table <- "epk200t_grid"
|
|
|
+ conf$schema <- "maaamet"
|
|
|
+ ruut::copy_qgis_object_to_db(
|
|
|
+ x = result, conf = conf, geometry_type = "POLYGON",
|
|
|
+ crs_source = "EPSG:3301"
|
|
|
+ )
|
|
|
+ cat(sprintf("\n-----------------\nAlgoritm: %s valmis.\n\n", algorithm))
|
|
|
+ # result
|
|
|
+}
|
|
|
+
|
|
|
+# 2. 5x5 km ruudustik
|
|
|
+create_epk10t_grid <- function() {
|
|
|
+ # ruut::qgis_algorithm_search_by_word(str = "v.mkgrid")
|
|
|
+ algorithm <- "grass7:v.mkgrid"
|
|
|
+ # cat(qgisprocess::qgis_show_help(algorithm = algorithm))
|
|
|
+ result <- qgisprocess::qgis_run_algorithm(
|
|
|
+ algorithm = algorithm,
|
|
|
+ "-h" = 0,
|
|
|
+ "-p" = 0,
|
|
|
+ GRASS_OUTPUT_TYPE_PARAMETER = 0,
|
|
|
+ GRASS_REGION_PARAMETER = "",
|
|
|
+ GRASS_VECTOR_DSCO = "",
|
|
|
+ GRASS_VECTOR_EXPORT_NOCAT = 0,
|
|
|
+ GRASS_VECTOR_LCO = "",
|
|
|
+ angle = 0,
|
|
|
+ box = "5000,5000", # 5x5 km
|
|
|
+ breaks = 0,
|
|
|
+ coordinates = "300000,6300000 [EPSG:3301]",
|
|
|
+ grid = "80,100", # ridade ja veergude arv
|
|
|
+ map = "tmp/epk10t_grrid.gpkg",
|
|
|
+ position = 0,
|
|
|
+ .quiet = TRUE
|
|
|
+ )
|
|
|
+ # result
|
|
|
+ epk10t_grid <- sf::read_sf(qgis_output(result, "map"))
|
|
|
+ sf::st_geometry(epk10t_grid) %>% plot()
|
|
|
+ conf <- ruut::get_config()
|
|
|
+ conf$table <- "epk10t_grid"
|
|
|
+ conf$schema <- "maaamet"
|
|
|
+ ruut::copy_qgis_object_to_db(
|
|
|
+ x = result, conf = conf, geometry_type = "POLYGON",
|
|
|
+ crs_source = "EPSG:3301"
|
|
|
+ )
|
|
|
+ cat(sprintf("\n-----------------\nAlgoritm: %s valmis.\n\n", algorithm))
|
|
|
+ # result
|
|
|
+}
|
|
|
+
|
|
|
+# 3. 1 x 1 km ruudustik
|
|
|
+create_epk2t_grid <- function() {
|
|
|
+ # ruut::qgis_algorithm_search_by_word(str = "v.mkgrid")
|
|
|
+ algorithm <- "grass7:v.mkgrid"
|
|
|
+ # cat(qgisprocess::qgis_show_help(algorithm = algorithm))
|
|
|
+ result <- qgisprocess::qgis_run_algorithm(
|
|
|
+ algorithm = algorithm,
|
|
|
+ "-h" = 0,
|
|
|
+ "-p" = 0,
|
|
|
+ GRASS_OUTPUT_TYPE_PARAMETER = 0,
|
|
|
+ GRASS_REGION_PARAMETER = "",
|
|
|
+ GRASS_VECTOR_DSCO = "",
|
|
|
+ GRASS_VECTOR_EXPORT_NOCAT = 0,
|
|
|
+ GRASS_VECTOR_LCO = "",
|
|
|
+ angle = 0,
|
|
|
+ box = "1000,1000",
|
|
|
+ breaks = 0,
|
|
|
+ coordinates = "300000,6300000 [EPSG:3301]",
|
|
|
+ grid = "400,500",
|
|
|
+ map = "tmp/epk2t_grrid.gpkg",
|
|
|
+ position = 0,
|
|
|
+ .quiet = TRUE
|
|
|
+ )
|
|
|
+ # result
|
|
|
+ # epk2t_grid <- sf::read_sf(qgis_output(result, "map"))
|
|
|
+ # sf::st_geometry(epk2t_grid) %>% plot()
|
|
|
+ conf <- ruut::get_config()
|
|
|
+ conf$table <- "epk2t_grid"
|
|
|
+ conf$schema <- "maaamet"
|
|
|
+ ruut::copy_qgis_object_to_db(
|
|
|
+ x = result, conf = conf, geometry_type = "POLYGON",
|
|
|
+ crs_source = "EPSG:3301"
|
|
|
+ )
|
|
|
+ cat(sprintf("\n-----------------\nAlgoritm: %s valmis.\n\n", algorithm))
|
|
|
+ # result
|
|
|
+}
|
|
|
+
|
|
|
+# 3. 100 x 100 m ruudustik
|
|
|
+create_epk02t_grid <- function() {
|
|
|
+ # ruut::qgis_algorithm_search_by_word(str = "v.mkgrid")
|
|
|
+ algorithm <- "grass7:v.mkgrid"
|
|
|
+ # cat(qgisprocess::qgis_show_help(algorithm = algorithm))
|
|
|
+ result <- qgisprocess::qgis_run_algorithm(
|
|
|
+ algorithm = algorithm,
|
|
|
+ "-h" = 0,
|
|
|
+ "-p" = 0,
|
|
|
+ GRASS_OUTPUT_TYPE_PARAMETER = 0,
|
|
|
+ GRASS_REGION_PARAMETER = "",
|
|
|
+ GRASS_VECTOR_DSCO = "",
|
|
|
+ GRASS_VECTOR_EXPORT_NOCAT = 0,
|
|
|
+ GRASS_VECTOR_LCO = "",
|
|
|
+ angle = 0,
|
|
|
+ box = "100,100",
|
|
|
+ breaks = 0,
|
|
|
+ coordinates = "300000,6300000 [EPSG:3301]",
|
|
|
+ grid = "4000,5000",
|
|
|
+ map = "tmp/epk02t_grrid.gpkg",
|
|
|
+ position = 0,
|
|
|
+ .quiet = TRUE
|
|
|
+ )
|
|
|
+ # result
|
|
|
+ # epk02t_grid <- sf::read_sf(qgis_output(result, "map"))
|
|
|
+ # sf::st_geometry(epk02t_grid) %>% plot()
|
|
|
+ conf <- ruut::get_config()
|
|
|
+ conf$table <- "epk02t_grid"
|
|
|
+ conf$schema <- "maaamet"
|
|
|
+ ruut::copy_qgis_object_to_db(
|
|
|
+ x = result, conf = conf, geometry_type = "POLYGON",
|
|
|
+ crs_source = "EPSG:3301"
|
|
|
+ )
|
|
|
+ cat(sprintf("\n-----------------\nAlgoritm: %s valmis.\n\n", algorithm))
|
|
|
+ # result
|
|
|
+}
|