This current architecture (which codename is
Svek) uses
Graphviz/Dot to compute
nodes position. The drawing itself is fully done in Java.
The main advantage is that, since PlantUML does the drawing, the software is now less dependent of Graphviz/Dot.
The code is also simpler, because the two steps (node computation
then graphical rendering) are clearly separated.
With this architecture, Graphviz/Dot generates a simplified SVG output
(whatever is the actual output format need by the user), and those simplified SVG data are parsed by PlantUML.
The drawing is then done by PlantUML.
You can keep the intermediate
dot file and the
simplified SVG output, with the
debugsvek
option.
With this option:
java -jar plantuml.jar -debugsvek filename.puml
We can keep the 2 intermediate files:
filename_svek.dot
filename_svek.svg
[Ref. QA-4420]