Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding edges in QGIS #352

Closed
2 tasks done
visr opened this issue Jun 20, 2023 · 0 comments · Fixed by #1220
Closed
2 tasks done

Adding edges in QGIS #352

visr opened this issue Jun 20, 2023 · 0 comments · Fixed by #1220
Labels
control Rule based control of physical layer QGIS Ribasim QGIS plugin

Comments

@visr
Copy link
Member

visr commented Jun 20, 2023

Discussed with @Huite yesterday.

Right now after every edit of the edges, all polylines are exploded into their segments to form lines. Then for each line, each end has to lie on a node, such that the from_node_id and to_node_id can be automatically filled in into the attribute table.

This means that you can draw one feature for several edges since it will be exploded. However this doesn't go so well with the new edge_type attribute which can be "flow" or "control". Right now we always fill in "flow", but the user needs to get a dropdown of option just like the Node table. This only really makes sense if users draw edges one segment at a time. Doing it this way also allows edges to be a polyline rather than a single line segment, which is nice for when you want it to follow a water body on the map.

image

  • ask user to select the edge_type
  • stop exploding linestrings, just connect the end vertices of each feature
@visr visr added control Rule based control of physical layer QGIS Ribasim QGIS plugin labels Jun 20, 2023
@github-project-automation github-project-automation bot moved this to To do in Ribasim Jun 20, 2023
@visr visr closed this as completed in #1220 Mar 8, 2024
visr added a commit that referenced this issue Mar 8, 2024
)

@JvanHouwelingen noticed that we don't create a `node_id` column instead
of `fid`. To be able to edit tables in QGIS we always need `fid`, but
its value no longer matters, so leaving it to autogenerate is normally
best.

This removes `explode_and_connect` to automatically fill in part of the
Edge attributes when creating a new geometry. It was no longer correct
due to the schema updates, so better to remove it for now, and accept
that users have to both draw the geometry and fill in the correct
attributes. An issue with the desired behavior is already written in
#352. In short, `derive_connectivity` would still be nice to have, but
not `explode`.

- add `node_id` to the Node schema
- use `node_id` in the Node label
- add `from_node_type` and `to_node_type` to the Edge schema
- keep showing fid in the Edge label to be able to associate edge_id in
timeseries widget
- use a dropdown selector for the Node and Edge editor widget, see
screenshot below
- update schemas with `listen_node_type` as in #1110


![image](https://github.com/Deltares/Ribasim/assets/4471859/aae55ec1-0612-408f-864b-e1158af8fe28)

Edit: with the updates from Huite this fixes #352

---------

Co-authored-by: Huite Bootsma <[email protected]>
@github-project-automation github-project-automation bot moved this from To do to ✅ Done in Ribasim Mar 8, 2024
Hofer-Julian pushed a commit that referenced this issue Mar 11, 2024
)

@JvanHouwelingen noticed that we don't create a `node_id` column instead
of `fid`. To be able to edit tables in QGIS we always need `fid`, but
its value no longer matters, so leaving it to autogenerate is normally
best.

This removes `explode_and_connect` to automatically fill in part of the
Edge attributes when creating a new geometry. It was no longer correct
due to the schema updates, so better to remove it for now, and accept
that users have to both draw the geometry and fill in the correct
attributes. An issue with the desired behavior is already written in
not `explode`.

- add `node_id` to the Node schema
- use `node_id` in the Node label
- add `from_node_type` and `to_node_type` to the Edge schema
- keep showing fid in the Edge label to be able to associate edge_id in
timeseries widget
- use a dropdown selector for the Node and Edge editor widget, see
screenshot below
- update schemas with `listen_node_type` as in #1110

![image](https://github.com/Deltares/Ribasim/assets/4471859/aae55ec1-0612-408f-864b-e1158af8fe28)

Edit: with the updates from Huite this fixes #352

---------

Co-authored-by: Huite Bootsma <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
control Rule based control of physical layer QGIS Ribasim QGIS plugin
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant