Wiki source code of KLay Force
Version 5.8 by cds on 2023/07/11 10:33
Show last authors
| author | version | line-number | content |
|---|---|---|---|
| 1 | {{panel title="Project Overview" borderStyle="dashed"}} | ||
| 2 | Responsible: | ||
| 3 | |||
| 4 | * Christoph Daniel Schulze | ||
| 5 | {{/panel}} | ||
| 6 | |||
| 7 | KLay Force is an implementation of the force-based layout approach where edges are regarded as springs pulling together the nodes they connect, while unconnected nodes are pushed apart from one another. The objective is to compute a state where this physical system reaches an equilibrium. | ||
| 8 | |||
| 9 | This page describes the available layout options as well as the general architecture of the algorithm. | ||
| 10 | |||
| 11 | **Contents** | ||
| 12 | |||
| 13 | |||
| 14 | |||
| 15 | {{toc maxLevel="2"/}} | ||
| 16 | |||
| 17 | [[doc:KIELER.Downloads - KIELER Layout Algorithms]] | ||
| 18 | |||
| 19 | {{excerpt-include/}} | ||
| 20 | |||
| 21 | = Layout Options = | ||
| 22 | |||
| 23 | {{warning title="ToDo"}} | ||
| 24 | List available layout options. | ||
| 25 | {{/warning}} | ||
| 26 | |||
| 27 | = Architecture = | ||
| 28 | |||
| 29 | The architecture basically consists of two chunks: the graph model and the actual implementation of the algorithm. | ||
| 30 | |||
| 31 | == Graph Model == | ||
| 32 | |||
| 33 | KLay Force uses a custom, lightweight graph model whose root is the {{code language="none"}}FGraph{{/code}} class. {{code language="none"}}FNode{{/code}} instances are connected through {{code language="none"}}FEdge{{/code}} instances that, to be routed properly, can have {{code language="none"}}FBendpoint{{/code}} instances. Edges and nodes can have a number of {{code language="none"}}FLabel{{/code}} instances. Nodes, labels, and bend points are considered {{code language="none"}}FParticle{{/code}}s since they exert forces on each other. The following is a class diagram of the basic graph model: | ||
| 34 | |||
| 35 | [[image:attach:KLayForce_Model.png]] | ||
| 36 | |||
| 37 | == Algorithm == | ||
| 38 | |||
| 39 | {{warning title="ToDo"}} | ||
| 40 | Describe architecture. | ||
| 41 | {{/warning}} | ||
| 42 | |||
| 43 | |||
| 44 | |||
| 45 |