diff --git a/workspace/R/utils.R b/workspace/R/utils.R index 8c0d6da739b84cce76d787a0bdc7d7345856ea63..e7727d973be4676a3fa4ade12c5d182f739e5be5 100644 --- a/workspace/R/utils.R +++ b/workspace/R/utils.R @@ -27,8 +27,8 @@ fix_headwaters <- function(nhd_rds, out_gpkg, new_atts = NULL, ble <- sf::st_zm(sf::st_as_sf(ble)) nhd <- sf::st_zm(nhd) - sf::st_geometry(nhd)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1 | nhd$Divergence == 2)] <- - sf::st_geometry(ble)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1 | nhd$Divergence == 2)] + sf::st_geometry(nhd)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1)] <- + sf::st_geometry(ble)[!sf::st_is_empty(sf::st_geometry(ble)) & (nhd$StartFlag == 1)] if(!is.null(new_atts)) { new_atts <- data.table::fread(new_atts, @@ -109,6 +109,12 @@ fix_headwaters <- function(nhd_rds, out_gpkg, new_atts = NULL, nhd <- select(nhd, -override_tocomid) + # remove remnant attributes + nhd <- select(nhd, -FromNode, -ToNode, -StartFlag -StreamCalc, -Divergence, -DnMinorHyd) + + warning("naive duplication!") + nhd <- nhd[!duplicated(nhd$COMID), ] + sf::write_sf(nhd, out_gpkg, "reference_flowlines") }