About Mapping with River Architect¶
The RiverArchitect/02_Maps/ folder contains a template structure that is copied by the LifespanDesign, Max Lifespan, and Modify Terrain modules to map their geodata outputs. The [[HabitatEvaluation]] module produces geofiles that can be mapped within the map project file of the ProjectMaker module (RiverArchitect/ProjectMaker/.templates/REACH_stn_vii_TEMPLATE/ProjectMaps.aprx). This differentiation enables distinguished mapping of river sections and project (versions). This Wiki only treats the automated mapping routines of the results of the LifespanDesign, Max Lifespan, and Modify Terrain modules. The ProjectMaker’s result mapping is design for a user-specific map modifications and export.
Before running any of the before-mentioned modules for mapping, open RiverArchitect/02_Maps/templates/river_template.aprx (ArcGIS Pro project file) and correct the background layer image source (adapt to CONDITION) by right-clicking on the background layer (see figure below), then click on Properties > Source > Set Data Source.... Navigate to the CONDITION folder and select the CONDITION’s background.tif (the background raster file must have the name background.tif - mapping will be inconsistent otherwise).
The standard symbology for lifespan rasters may be modified and it can be restored by right-clicking on a lifespan or Best Lifespans raster layer > Symbology. The Symbology opens up and the standard symbology can be restored from the top-right drop-down menu (import (...) > nagivate to RiverArchitect/02_Maps/templates/symbology/ > select LifespanRasterSymbology.lyrx).
The project (.aprx) files contains a set of pre-defined layouts and layer names and these names must not be changed. Only consider changing the symbology or data sources, because the modules will automatically update the layer connection database and dataset according to the output data (read more).
Standard layouts¶
LifespanDesign layouts:
layout_lffor lifespan mappinglayout_ds_biofor bioengineering featureslayout_ds_Dcrfor grain mobility maps and sediment replenishment / gravel augmentationlayout_ds_Dwfor wood diameter mobility mapslayout_ds_FS_D15for fine sediment’s mobile D15 sizeslayout_ds_FS_D85for fine sediment’s mobile D85 sizeslayout_ds_SeS0for ratios between terrain and (hypothetic) energy slopes (side channels)layout_ds_sidecafor side cavity application site mappinglayout_dsfor widen application site mapping
Max Lifespan layouts:
layout_mlf_bioengfor best lifespan maps of the (other) bioengineering feature grouplayout_mlf_maintenancefor best lifespan maps of the maintenance/longitudinal connectivity feature grouplayout_mlf_plantsfor best lifespan maps of the vegetation plantings feature grouplayout_mlf_terraformingfor best lifespan maps of the terraforming feature group
Modify Terrain layouts:
volumes_cust_negfor mapping the terrain differences (excavation terraforming works) of a manually modified DEMvolumes_cust_posfor mapping the terrain differences (fill terraforming works) of a manually modified DEMvolumes_grade_negfor mapping the terrain differences of parametrically (threshold-based) floodplain grading within the Modify Terrain module (only excavationnegis meaningful)volumes_widen_negfor mapping the terrain differences of parametrically (threshold-based) river widening within the Modify Terrain module (only excavationnegis meaningful)
Modify the symbology¶
For creating maps with a different symbology then the template symbology, proceed as follows:
Run the module
Map Makerfunction to create a copy of the template map folder, which will be created inRiverArchitect/02_Maps/CONDITION/.Open the automatically created
RiverArchitect/02_Maps/CONDITION/map_CONDITION_design.aprxand adapt the symbology and legend as needed.Re-run the module
Map Makerfunction to re-create (overwrite previous).PDFmaps. Note: When a module detects an existing version ofRiverArchitect/02_Maps/CONDITION/map_CONDITION_design.aprxfor theCONDITIONthat it is applied on, it will NOT OVERWRITE the PROJECTMAP_CONDITION_DESIGN.APRXfile, but it will “overwrite existing.PDFmaps.”
Modify map extents¶
The global map extents are determined by the input rasters to map. The same is true for raster calculations. The application scheme of River Architect (Home Wiki page) starts with the usage of the LifespanDesign module. Here, the calculation can be limited to the background.tif raster. Thus, for changing map extents, adapt the extent of input rasters for the LifespanDesign and Max Lifespan modules. For the Modify Terrain module adapt the dem.tif raster in the input/ condition folder, which determines the map extents. Moreover, when applying Modify Terrain, do not use another condition folder for the modified DEM for volume calculation, because it may interfere, for example, with the dem_detrend.tif raster. Preferably use a copy or extract the modified condition’s dem.tif to ModifyTerrain/Input/DEM/CONDITION/.
Moreover, each module has an own mapping definition file to enable reach-wise or multiple map creation within one PDF. The particular map extent definitions are:
LifespanDesign:
RiverArchitect/LifespanDesign/.templates/mapping.inp(see definitions)Max Lifespan:
RiverArchitect/MaxLifespan/.templates/mapping.inp(definitions are analogue to the LifespanDesign module)Modify Terrain:
RiverArchitect/ModifyTerrain/.templates/computation_extents.xlsx(see reach definitions)
Code information¶
Mapping is centralized for the LifespanDesign, Max Lifespan, and Modify Terrain modules in the Mapper() class that is stored in RiverArchitect/.site_packages/riverpy/cMapper.py. The layout and layer names are hard-coded (sorry for that…) and this is why layer and layout names should not be changed in the project (.aprx) files.