Fast rendering
drom opened this issue · comments
Aliaksei Chapyzhenka commented
Timing diagram ( part of #5 ) can be constructed in vector form, but then need to be rendered into pixel accurate form to be useful.
Possible options:
- SVG
- Canvas
- WebGL
Maps or 2D gaming rendering engines can be a good source of inspiration
Aliaksei Chapyzhenka commented
Aliaksei Chapyzhenka commented
My current ideas about Fast rendering:
- divide all diagram into rectangular tiles
- first, render the tiles included into viewfinder [ #11 ]
- then render the tiles around for faster scroll/zoom [ #2 ]
- keep the LRU cache of pre-rendered tiles
Tile rendering:
- create a set of useful building blocks (skin) SVG -> raster
- compose bigger blocks by hierarchical rectangle copy process.
- render tiles from the hierarchy of building blocks.
Aliaksei Chapyzhenka commented
Sources of inspiration:
Rendering in Web workers: