kieler / klighd-vscode

Eclipse Public License 2.0
8 stars 6 forks source link

Beautification of Proxies #170

Open NiklasRentzCAU opened 4 months ago

NiklasRentzCAU commented 4 months ago

We now have the basic support for proxies in this repository. However, there are still a few changes that should be implemented before considering proxy

Edge Proxies:

Node Proxies:

(this is referring to "signpost" proxies as proxies positioned where edges leave the screen, so that the proxies work as a "signpost" showing where the edge going off-screen is headed to without needing to do edge-proxies for that) To create a "signpost" projection of proxies onto edges (if they are on-screen), the way proxies are created and positioned has to be modified. In proxy-view.ts the method getTransform is responsible for positioning a node's proxy. The current structure only creates a single proxy for such any node. In a signpost projection we would require more. Additionally it needs to decided how to handle nodes where there currently is no connecting edge on screen. The simplest approach would be to not create a proxy in that case. But we could also use a radial projection for those nodes. Going further it might make sense for the synthesis to be able to specify using semantic tags, which projection should be used.

Spline intersections: https://scholarsarchive.byu.edu/cgi/viewcontent.cgi?article=1000&context=facpub chapter 7

De Casteljau's Algorithm

General

NiklasRentzCAU commented 1 month ago

More issues found while using proxies, collected in this issue: