Features
As MuLaViTo is based on the Java Universal Network/Graph Framework (JUNG), MuLaViTo comprises all features JUNG provides. For details on JUNG's features, go here.
Graphical User Interface
(mulavito.gui)
- Multi-layer graph framework based on the JUNG graph framework
- GUI class for a paneled main window (mulavito.gui.Gui)
- Entity for viewing a multi-layer graph (mulavito.gui.components.GraphPanel)
- (Un)Synchronized view of individual layers
- Hide or maximize certain layers using an advanced GridLayout (mulavito.gui.utils.MyGridLayout)
- Auto-rearranging and auto-resizing of multi-layer graphs
- mulavito.gui.components.SelectionPanel to list picked/selected vertices and edges in multiple layers
- mulavito.gui.components.QuickSearchBar for performing searches (e.g. vertices and edges) in the multi-layer graph using regular expressions (e.g. V[1-5])
- Run any algorithm derived from mulavito.algorithms.IAlgorithm in a separate
Java thread and show status information using mulavito.gui.dialogs.ProgressBarDialog and
an arbitrary number of mulavito.algorithms.AbstractAlgorithmStatus
- A mulavito.gui.components.FloatablePanel containing an arbitrary number of mulavito.gui.components.FloatingTabbedPane that can be docked/undocked as well as closed, e.g.
- mulavito.gui.components.ConsolePanel to intercept stdout/stderr
- mulavito.gui.components.LayerDataPanel for displaying graph degree data
- An extended JFileChooser, mulavito.gui.dialogs.LocatableFileChooser, that remembers last path with different categories
- Export of scalable vector graphics (SVG) of any layer (mulavito.utils.SVGExporter) using Batik SVG Toolkit
- Basis for content-aware pop-up menus (mulavito.gui.control.AbstractPopupMousePlugin)
- Basic file filter (mulavito.gui.utils.BasicFileFilter)
- Demonstrators (mulavito.samples)
Graphs
Graph algorithms
(mulavito.algorithms)
- Disjoint paths (mulavito.algorithms.shortestpath.disjoint)
- k-shortest paths (mulavito.algorithms.shortestpath.ksp)
- JUnits to validate the algorithms (mulavito.tests)
Graph generators
(mulavito.graph.generators)
- Random
- Fully-meshed
- Waxman
- Wrapper to ensure reachability
Utilities
Basic random number stream generators
(mulavito.utils.distributions)
- Uniform
- Negative-exponential / Poisson
- Deterministic
Miscellaneous
(mulavito.utils)
- Resource accessor for using embedded icons of the Tango project or icons outside of MuLaViTo in derived projects
- Class scanner utils (mulavito.utils.ClassScanner) for dynamic class loading even in JAR files
- Ant-based build scripts with automatic downloads of dependencies