ch_wbt_pourpoints {CSHShydRology}R Documentation

Snap pour points to channels

Description

Pour points describe the outlets of sub-basins within a DEM. To use the pour points to delineate catchments, they must align with the drainage network. This function snaps (forces the locations) of pour points to the channels.

Usage

ch_wbt_pourpoints(
  pp_sf = NULL,
  fn_flowacc,
  fn_pp,
  fn_pp_snap,
  check_crs = TRUE,
  snap_dist = NULL,
  ...
)

Arguments

pp_sf

sf object containing pour points. These must be supplied by the user. See the code in ch_volcano_pourpoints for an example of creating the object.

fn_flowacc

Name of file containing flow accumulations.

fn_pp

File name to create un-snapped pour points.

fn_pp_snap

File name for snapped pour points.

check_crs

If TRUE the projections of the pour points and flow accumulation files will be checked to ensure they are identical.

snap_dist

Maximum snap distance in map units.

...

Additional parameters for whitebox function wbt_snap_pour_points.

Value

Returns a sf object of the specified pour points snapped to the channel network.

Author(s)

Dan Moore

See Also

ch_volcano_pourpoints

Examples

# Only proceed if Whitebox executable is installed
library(whitebox)
if (check_whitebox_binary()){
  library(raster)
  test_raster <- ch_volcano_raster()
  dem_raster_file <- tempfile(fileext = c(".tif"))
  no_sink_raster_file <- tempfile("no_sinks", fileext = c(".tif"))

  # write test raster to file
  writeRaster(test_raster, dem_raster_file, format = "GTiff")

  # remove sinks
  removed_sinks <- ch_wbt_removesinks(dem_raster_file, no_sink_raster_file, method = "fill")

  # get flow accumulations
  flow_acc_file <- tempfile("flow_acc", fileext = c(".tif"))
  flow_acc <- ch_wbt_flow_accumulation(no_sink_raster_file, flow_acc_file)

  # get pour points
  pourpoint_file <- tempfile("volcano_pourpoints", fileext = c(".shp"))
  pourpoints <- ch_volcano_pourpoints(pourpoint_file)
  snapped_pourpoint_file <- tempfile("snapped_pourpoints", fileext = c(".shp"))
  snapped_pourpoints <- ch_wbt_pourpoints(pourpoints, flow_acc_file, pourpoint_file,
  snapped_pourpoint_file, snap_dist = 10)
} else {
  message("Examples not run as Whitebox executable not found")
}

[Package CSHShydRology version 1.4.0 Index]