USEPA / SWMM-EPANET_User_Interface

User interface for the Stormwater-Management-Model
111 stars 67 forks source link

New feature request: Change model object (e.g. SWMM subcatchment) outlet via property editor #347

Closed barrc closed 4 years ago

barrc commented 4 years ago

@michelleannesimon and I noticed today that the sublinks (the lines that connect the subcatchment to its outlet) are not drawn initially when you create a simple model. If you save the model, close, then reload it, the sublinks appear.

@TongZhai I see that you commented out lines 326-328 in frmSubcatchments.py in commit a8a61c589 and it looks like those lines may have been responsible for creating the subcatchment links. When I uncomment them it seems like the links are drawn without saving/reloading. Could you help me understand why those were commented out?

Version: SWMM MTP6r2

michelleannesimon commented 4 years ago

I did not comment them out. Who issued the commit? Which number is it?

michelleannesimon commented 4 years ago

A new file that I am creating is not drawing conduits. It is also not erasing conduits that I have deleted. [CONDUITS] ;;Name From Node To Node Length Roughness InOffset OutOffset InitFlow MaxFlow ;;-------------- ---------------- ---------------- ---------- ---------- ---------- ---------- ---------- ---------- C2 J1 O3 600.0 0.0138 0.0 0.0 3.0

[XSECTIONS] ;;Link Shape Geom1 Geom2 Geom3 Geom4 Barrels Culvert
;;-------------- ------------ ---------------- ---------- ---------- ---------- ---------- ---------- C1 CIRCULAR 1.0 0.0 0.0 0.0 1
C1 CIRCULAR 1.0 0.0 0.0 0.0 1
C2 CIRCULAR 1 0.0 0.0 0.0 1
C3 CIRCULAR 1.0 0.0 0.0 0.0 1
C1 CIRCULAR 1.0 0.0 0.0 0.0 1

barrc commented 4 years ago

Tong issued the commit that commented those lines out, the second paragraph was intended to be directed at him. The corresponding commit hash is a8a61c5.

TongZhai commented 4 years ago

@barrc @michelleannesimon I tested the model elements' creation process in both the installed version (MTP6r2) and in the development environment, I didn't encounter the stated behavior, the links, sublinks etc were created and displayed properly as shown below on a unsaved new creation:

image

Could you describe your workflow a bit more specific for me to reproduce this behavior?

barrc commented 4 years ago

@TongZhai here are the steps I'm taking on current dev-ui-py3qt5:

image

Can you reproduce?

TongZhai commented 4 years ago

@barrc Alright, now I see, it is the original Delphi way of defining outlet that's not honored in the program. We have been focusing on doing these connections through the GIS mapping interface via direct "drawing" to connect elements. I think the commented out redrawn calls mentioned earlier would help in this case, but recreate all GIS data from scratch every time an element is added is bit too much especially when dealing with very large models with thousands of model elements. Anyway, I will work on getting this hooked up and explore a better way perhaps.

TongZhai commented 4 years ago

This turns out to be a more complex feature than I thought as it quickly evolves into handling of any changes to the inlet/outlet of any model element through its property editor. So, I am evaluating whether to put this on hold for now or switch back to the redraw everything approach for this go around.

TongZhai commented 4 years ago

Just finished the initial implementation of this feature that allows the change of subcatchment outlet and link inlet/outlet via property editor. Ran a batch of tests, seems to be working OK. I will do a bit more testing, then merge all these in.