GraphiteEditor / GraphiteEditor/Graphite
Destructive node collapse
- Dominant language
- Rust
- Stars
- 27.2k
- Forks
- 1.3k
- Avg merge
- 20h 5m
- Merged PRs (30d)
- 57
Description
It should be possible to right click a node and collapse its effect into its upstream nodes, whenever that's possible. For example, a Transform node should be able to update the nodes upstream of it to produce the same result without its continued presence. This should work for all nodes that could support something of the sort. For example, if a Round Corners node (which we don't have yet) is applied downstream of a Rectangle node, it could be collapsed by setting the original Rectangle node's corner rounding parameter to an equivalent value after factoring in any transformations that have altered its scale along the data flow. We may need some kind of system to encode and calculate equivalence relations. (This full system could be a GSoC project.)
For some background reading related to the subject:
- https://en.wikipedia.org/wiki/E-graph
- https://egraphs-good.github.io/
- https://www.youtube.com/watch?v=ap29SzDAzP0
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.