com.jgraph.layout.hierarchical.model
public class JGraphHierarchyModel extends Object
Field Summary | |
---|---|
protected boolean | deterministic
Whether or not cells are ordered according to the order in the graph
model. |
protected int | dfsCount
Count of the number of times the ancestor dfs has been used |
protected Map | edgeMapper
Map from graph edges to internal model edges |
int | maxRank
Stores the largest rank number allocated |
Map | ranks
Mapping from rank number to actual rank |
Object[] | roots
Store of roots of this hierarchy model, these are real graph cells, not
internal cells |
protected boolean | scanRanksFromSinks
Whether the rank assignment is done from the sinks or sources. |
protected Map | vertexMapper
Map from graph vertices to internal model nodes |
Constructor Summary | |
---|---|
JGraphHierarchyModel(JGraphFacade facade)
Constructor with no parameters creates a default model
| |
JGraphHierarchyModel(JGraphFacade facade, Object[] vertices, boolean ordered, boolean deterministic, boolean scanRanksFromSinks)
Creates an internal ordered graph model using the vertices passed in. |
Method Summary | |
---|---|
protected void | createInternalCells(JGraphFacade facade, Object[] vertices, JGraphHierarchyNode[] internalVertices)
Creates all edges in the internal model
|
void | dfs(JGraphFacade.CellVisitor visitor, Object[] dfsRoots, boolean trackAncestors, Set seenNodes)
A depth first search through the internal heirarchy model
|
void | dfs(JGraphHierarchyNode parent, JGraphHierarchyNode root, JGraphHierarchyEdge connectingEdge, JGraphFacade.CellVisitor visitor, Set seen, int layer)
Performs a depth first search on the internal hierarchy model
|
void | dfs(JGraphHierarchyNode parent, JGraphHierarchyNode root, JGraphHierarchyEdge connectingEdge, JGraphFacade.CellVisitor visitor, Set seen, int[] ancestors, int childHash, int layer)
Performs a depth first search on the internal hierarchy model. |
void | fixRanks()
Fixes the layer assignments to the values stored in the nodes. |
void | formOrderedHierarchy(JGraphFacade facade, Object[] vertices)
Creates an internal ordered graph model using the vertices passed in. |
int | getDfsCount() |
Map | getEdgeMapper() |
Map | getVertexMapping() |
void | initialRank()
Basic determination of minimum layer ranking by working from from sources
or sinks and working through each node in the relevant edge direction.
|
boolean | isDeterministic() |
boolean | isSinksAtLayerZero() |
void | setDeterministic(boolean deterministic) |
void | setDfsCount(int dfsCount) |
void | setEdgeMapper(Map edgeMapper) |
void | setSinksAtLayerZero(boolean sinksAtLayerZero) |
void | setVertexMapping(Map vertexMapping) |
Parameters: facade the facade of the graph to be laid out
Parameters: facade the facade describing the graph to be operated on vertices the vertices for this hierarchy ordered whether or not the vertices are already ordered deterministic whether or not this layout should be deterministic on each usage scanRanksFromSinks Whether the rank assignment is done from the sinks or sources.
Parameters: facade the facade desrcibing the graph to be laid out vertices the vertices whom are to have an internal representation created internalVertices the blank internal vertices to have their information filled in using the real vertices
Parameters: visitor the visitor pattern to be called for each node trackAncestors whether or not the search is to keep track all nodes directly above this one in the search path
Parameters: parent the parent internal node of the current internal node root the current internal node connectingEdge the internal edge connecting the internal node and the parent internal node, if any visitor the visitor pattern to be called for each node seen a set of all nodes seen by this dfs a set of all of the ancestor node of the current node layer the layer on the dfs tree ( not the same as the model ranks )
Parameters: parent the parent internal node of the current internal node root the current internal node connectingEdge the internal edge connecting the internal node and the parent internal node, if any visitor the visitor pattern to be called for each node seen a set of all nodes seen by this dfs ancestors the parent hash code childHash the new hash code for this node layer the layer on the dfs tree ( not the same as the model ranks )
Parameters: facade the facade describing the graph to be operated on vertices the vertices to be laid out
Returns: Returns the dfsCount.
Returns: Returns the edgeMapper.
Returns: Returns the vertexMapping.
Returns: Returns the deterministic.
Parameters: deterministic The deterministic to set.
Parameters: dfsCount The dfsCount to set.
Parameters: edgeMapper The edgeMapper to set.
Parameters: vertexMapping The vertexMapping to set.