| 
 | JGraph X 2.1.0.7 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.mxgraph.analysis.mxTraversal
public class mxTraversal
Implements a collection of utility methods for traversing the graph structure. This does not include tree traversal methods.
| Constructor Summary | |
|---|---|
| mxTraversal() | |
| Method Summary | |
|---|---|
| static List<Map<Object,Object>> | bellmanFord(mxAnalysisGraph aGraph,
            Object startVertex)Implements the Bellman-Ford shortest path from startVertex to all vertices. | 
| static void | bfs(mxAnalysisGraph aGraph,
    Object startVertex,
    mxGraph.mxICellVisitor visitor)Implements a recursive breadth first search starting from the specified cell. | 
| static void | dfs(mxAnalysisGraph aGraph,
    Object startVertex,
    mxGraph.mxICellVisitor visitor)Implements a recursive depth first search starting from the specified cell. | 
| static void | dijkstra(mxAnalysisGraph aGraph,
         Object startVertex,
         Object endVertex,
         mxGraph.mxICellVisitor visitor)Implements the Dijkstra's shortest path from startVertex to endVertex. | 
| static ArrayList<Object[][]> | floydRoyWarshall(mxAnalysisGraph aGraph)Implements the Floyd-Roy-Warshall (aka WFI) shortest path algorithm between all vertices. | 
| static Object[] | getWFIPath(mxAnalysisGraph aGraph,
           ArrayList<Object[][]> FWIresult,
           Object startVertex,
           Object targetVertex)This method helps the user to get the desired data from the result of the Floyd-Roy-Warshall algorithm. | 
| Methods inherited from class java.lang.Object | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
| Constructor Detail | 
|---|
public mxTraversal()
| Method Detail | 
|---|
public static void dfs(mxAnalysisGraph aGraph,
                       Object startVertex,
                       mxGraph.mxICellVisitor visitor)
 mxTraversal.bfs(analysisGraph, startVertex, new mxICellVisitor()
 {
        public boolean visit(Object vertex, Object edge)
        {
                // perform your processing on each cell here
                return false;
        }
 });
 
aGraph - the graphstartVertex - visitor - 
public static void bfs(mxAnalysisGraph aGraph,
                       Object startVertex,
                       mxGraph.mxICellVisitor visitor)
 mxTraversal.bfs(analysisGraph, startVertex, new mxICellVisitor()
 {
        public boolean visit(Object vertex, Object edge)
        {
                // perform your processing on each cell here
                return false;
        }
 });
 
aGraph - the graphstartVertex - visitor - 
public static void dijkstra(mxAnalysisGraph aGraph,
                            Object startVertex,
                            Object endVertex,
                            mxGraph.mxICellVisitor visitor)
                     throws StructuralException
 mxTraversal.dijkstra(analysisGraph, startVertex, endVertex, new mxICellVisitor()
 {
        public boolean visit(Object vertex, Object edge)
        {
                // perform your processing on each cell here
                return false;
        }
 });
 
aGraph - startVertex - endVertex - visitor - 
StructuralException - - The current Dijkstra algorithm only works for connected graphs
public static List<Map<Object,Object>> bellmanFord(mxAnalysisGraph aGraph,
                                                   Object startVertex)
                                            throws StructuralException
aGraph - startVertex - 
StructuralException - - The Bellman-Ford algorithm only works for graphs without negative cycles
public static ArrayList<Object[][]> floydRoyWarshall(mxAnalysisGraph aGraph)
                                              throws StructuralException
aGraph - 
StructuralException - - The Floyd-Roy-Warshall algorithm only works for graphs without negative cycles
public static Object[] getWFIPath(mxAnalysisGraph aGraph,
                                  ArrayList<Object[][]> FWIresult,
                                  Object startVertex,
                                  Object targetVertex)
                           throws StructuralException
aGraph - FWIresult - - the result of the Floyd-Roy-Warhall algorithmstartVertex - targetVertex - 
StructuralException - - The Floyd-Roy-Warshall algorithm only works for graphs without negative cycles| 
 | JGraph X 2.1.0.7 | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||