-
Notifications
You must be signed in to change notification settings - Fork 1
GraphBuilder redesign #17
Copy link
Copy link
Open
Description
Following up on this issue, I've decided I need to redesign the pyriv.graph_prep module and GraphBuilder object a bit. Basically, GraphBuilder needs to be able to handle the following tasks:
- Network Creation
- River Network
- Data import (shp or graphpickle for now)
- Addition of coastline (to identify river mouths)
- Identification of rivermouths and inland deadends
- Pruning useless bits off the graph
- Fixing unintended breaks
- Node coordinate rounding
- Coast Network
- Options for handling lines or polygons (multipart and single part)
- Simplification and node count metrics for prediction of processing time
- Edge creation (multiprocessor command line scripts?)
- Network Join
- River Network
In order to do this across all likely scenarios, it has to account for the following cases:
- When the river mouths connect perfectly to the coastline (simplest)
- When the river mouths are close enough to be auto completed to the coastline
- When the connection segments must be created and added in.
- Any combination of the previous cases.
I think the work-flow needs to looks something like this:
- Initialize
GraphBuilderobject with river shp, coastline (polygon) shp, and river_mouth_tolerance value. - Get feed back on the inputs with potential problems flagged. Essentially river network dead ends must be categorized:
- River mouths (connected to coastline)
- Dead ends:
- Ocean (river dead ends outside land polygon)
- Auto complete candidates (river dead end on land, within tolerance from coastline)
- True dead ends (river dead end on land, beyond tolerance from coastline). These can be unintentional river network breaks or candidates for hand drawn connection to the coastline.
- Offer functions for:
- Auto complete
- Adding in drawn segments
- Fixing network gaps
- Export of completed river graph to graph pickle format.
- Creation and export of coastal network
- Joining of river and coastal networks allowing for:
- Ocean nodes
- Coastal nodes
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels