One of the challenges of drawing large diagrams is the question of how to maintain a readable diagram. While details remain readable when zoomed in, it is difficult to obtain a good overview while zoomed out, because labels are generally too small to read. In our current tooling in klighd-vscode there is a "Smart Zoom" feature for nodes. It hides details within nodes and draws titles of nodes at an increased scale to keep them readable while zooming out. This can be seen in the figure below.

The task for this thesis is to implement a similar feature for edge labels and for port labels. This requires identifying and designing a sensible method for determining the available label bounds in which the label may be upscaled. The work should build upon the existing smart zoom feature.

image-20240131151228-1.png

Goals

  • Implement a smart zoom feature for edge labels
  • Implement a smart zoom feature for port labels
  • Evaluation of sensible configurations and usability of features

Scope

Master's/Bachelor's Thesis

Related Work/Literature

  • Prior work on existing Smart Zoom feature:
    • Master Project
    • Master's Thesis: Bennet Bleßmann, Google Maps for Models, April 2022
  • De Carlo, G., Langer, P., & Bork, D. Advanced visualization and interaction in GLSP-based web modeling: realizing semantic zoom and off-screen elements. Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems (pp. 221-231), October 2022

Involved Languages/Technologies

  • Java / Xtend in SCCharts Synthesis
  • Typescript in klighd-vscode

Supervised by

Maximilian Kasperowski

mka@informatik.uni-kiel.de

Tags: