de.cau.cs.kieler.kiml.grana.analyses
Class HyperedgeCrossingsAnalysis
java.lang.Object
de.cau.cs.kieler.kiml.grana.analyses.HyperedgeCrossingsAnalysis
- All Implemented Interfaces:
- IAnalysis
public class HyperedgeCrossingsAnalysis
- extends Object
- implements IAnalysis
A special edge crossings analysis for hyperedges. Works best with data flow diagrams.
There is one case of crossings which the algorithm fails to count. When an edge
intersects another edge without joining it, but with the intersection point being a
bend point, the crossing isn't counted. This is usually not a problem for orthogonally
routed diagrams, but may be one for others. I haven't fixed that yet because there's
no easy obvious way to do so, and the case is sufficiently rare.
- Rating

Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
HyperedgeCrossingsAnalysis
public HyperedgeCrossingsAnalysis()
doAnalysis
public Object doAnalysis(KNode parentNode,
Map<String,Object> results,
IKielerProgressMonitor progressMonitor)
- Performs the actual analysis process and returns the results. If more
than one component have been specified for the analysis in the extension
the method is expected to return an array.
- Specified by:
doAnalysis
in interface IAnalysis
- Parameters:
parentNode
- the parent node which the analysis is performed onresults
- the result of analyses that were performed before this one (it
should include the results of all dependency analyses)progressMonitor
- progress monitor used to keep track of progress
- Returns:
- the analysis results