Comments (2)
Hello @spoenemann, @JanKoehnlein ,
I am currently working on icreasing the performace. The Main Problem for large graphs are Zoom actions right now, resulting in setviewport actions that are done one after another.
The Idea we had was to make a delay (5-20ms) so that one can make a list of setviewport actions in the Mouse Tool and then merge those in a good way :)
Is that a change that should bei added to sprotty?
Then i would try and rewrite Part of the Mouse Tool !
Greate regards Felix
from sprotty.
The merge
method is used to merge multiple commands within the same animation frame:
sprotty/packages/sprotty/src/base/commands/command.ts
Lines 108 to 118 in 6d43db2
As to the proposal to take a shortcut for viewport changes: This would break the implementation of Level-of-Detail rendering, i.e. omitting selected details when the user has zoomed out. We already have that in our Multicore example.
There are already other ways to improve the performance for large graphs, and those work for all diagram interactions, not just viewport changes. I had a presentation about that together with @jbicker at EclipseCon 2023, and we're going to publish a blog post at https://www.typefox.io/blog/ soon.
from sprotty.
Related Issues (20)
- SCompartment question HOT 1
- Conflicting request IDs in client and server
- generator-sprotty is not part of the sprotty organization HOT 2
- Remove `SModelExtension` interface HOT 1
- Remove test-helper and jsdom dependency HOT 3
- Data Elements HOT 3
- Edge created while dragging from a port is deleted after any model change HOT 3
- Zoom in or out results in a bad scroll offset for the last handled WheelEvent HOT 1
- SVG export doesn't work when ProjectedViewport is used
- Fix versions of Sprotty dependencies HOT 1
- Enhance Sprotty JSX/TSX support HOT 2
- Junction point edge routing
- Self-contained SVG Export HOT 3
- ELK rectpacking causes error HOT 4
- Support shadow dom
- sprotty-elk sometimes doesn't delete old edge bends on layout changes HOT 4
- Moving multiple containers does not show feedback move of internal edge bendpoints
- Zoom limits are not optional
- DiagramServerProxy should forward all responses to server requests
- Polyline error HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sprotty.