Package | Description |
---|---|
com.yworks.yfiles.algorithms | |
com.yworks.yfiles.layout |
Provides essential classes and interfaces that constitute the infrastructure for automatic graph layout generation.
|
com.yworks.yfiles.layout.hierarchic |
Provides hierarchic layout style algorithms.
|
com.yworks.yfiles.layout.partial |
Provides class
PartialLayout that enables layout of user-specified, distinct parts of a diagram without altering the existing layout of the remainder of the diagram. |
com.yworks.yfiles.layout.router |
Provides classes for automatic routing of the edges in a graph.
|
com.yworks.yfiles.layout.router.polyline |
Provides classes and interfaces for automatic polyline routing of the edges of a graph.
|
com.yworks.yfiles.layout.tree |
Provides tree layout style algorithms.
|
Modifier and Type | Field and Description |
---|---|
protected EdgeList |
LayoutGraphHider.hiddenEdges
holds the list of the hidden edges in stack order.
|
Modifier and Type | Method and Description |
---|---|
static EdgeList[] |
GraphConnectivity.biconnectedComponents(Graph graph)
Calculates the biconnected components of a given undirected graph.
|
static EdgeList |
ShortestPaths.constructEdgePath(Node s,
Node t,
Edge[] pred)
Convenience method that constructs an explicit
path of edges from the result returned by one of the
shortest paths methods defined in this class. |
static EdgeList |
ShortestPaths.constructEdgePath(Node s,
Node t,
IDataProvider pred)
Like
ShortestPaths.constructEdgePath(Node, Node, Edge[]) but the path edges are given by a IDataProvider . |
static EdgeList |
Trees.directTree(Graph tree)
Converts the given tree to a directed rooted tree with the given node as root element by reversing some edges.
|
static EdgeList |
Trees.directTree(Graph tree,
Node root)
Converts the given tree to a directed rooted tree with the given node as root element by reversing some edges.
|
static EdgeList[] |
Paths.findAllChains(Graph graph,
boolean directed)
Returns all chains present in the given graph.
|
static EdgeList |
Cycles.findAllCycleEdges(Graph graph,
boolean directed)
Returns an
EdgeList that contains all the edges that are part of at least one directed or undirected simple
cycle. |
static EdgeList[] |
Paths.findAllPaths(Graph graph,
Node startNode,
Node endNode,
boolean directed)
Returns all simple directed or undirected paths that connect a
start node with an end node. |
static EdgeList[] |
Paths.findAllPaths(Graph graph,
Node startNode,
Node endNode,
boolean directed,
Predicate<EdgeList> filter)
A variant of
Paths.findAllPaths(Graph, Node, Node, boolean) which returns all simple directed or undirected paths
between two given nodes and, additionally, allows to specify a filter for the paths to be returned. |
static EdgeList |
Cycles.findCycle(Graph graph,
boolean directed)
Returns an
EdgeList that contains the edges of a cycle found in the given graph. |
static EdgeList |
Paths.findLongestPath(Graph graph)
Returns the longest directed path in a given acyclic weighted graph.
|
static EdgeList |
Paths.findLongestPath(Graph graph,
IDataProvider edgeLength)
Returns the longest directed path in a given acyclic weighted graph.
|
static EdgeList |
Paths.findLongPath(Graph graph)
Returns an
EdgeList containing the edges of an undirected simple path within the given graph. |
static EdgeList |
Paths.findPath(Graph graph,
Node startNode,
Node endNode,
boolean directed)
Returns an
EdgeList containing the edges of a path from the given start node to the given end node, if such a
path exists. |
static EdgeList[] |
Trees.getTreeEdges(Graph graph)
Returns an array of
EdgeList objects each containing edges that belong to a maximal directed subtree of the
given graph. |
static EdgeList[] |
Trees.getTreeEdges(Graph graph,
NodeList[] treeNodes)
Returns an array of
EdgeList objects each containing edges that belong to a maximal directed subtree of the
given graph. |
static EdgeList |
SpanningTrees.kruskal(Graph graph,
IDataProvider cost)
Calculates a minimum spanning tree for the given graph.
|
static EdgeList |
GraphConnectivity.makeBiconnected(Graph graph)
Makes the given graph biconnected by inserting a minimum number of edges in the graph.
|
static EdgeList |
GraphConnectivity.makeConnected(Graph graph)
Makes a graph connected by adding additional edges to the graph.
|
static EdgeList |
SpanningTrees.minimum(Graph graph,
IDataProvider cost)
Calculates a minimum spanning tree for the given graph.
|
static EdgeList |
SpanningTrees.prim(Graph graph,
IDataProvider cost)
Calculates a minimum spanning tree for the given graph.
|
static EdgeList[] |
ShortestPaths.shortestPair(Graph graph,
Node source,
Node target,
boolean directed,
IDataProvider costDP)
Returns two edge-disjoint paths in a non-negatively weighted directed graph, such that both paths connect nodes
s
and t and have minimum total length. |
static EdgeList |
ShortestPaths.singleSourceSingleSink(Graph graph,
Node s,
Node t,
boolean directed,
double[] cost)
Similar to
ShortestPaths.singleSourceSingleSink(Graph, Node, Node, boolean, double[], Edge[]) but instead of returning the
shortest distance between the source and sink the actual shortest edge path between these nodes will be returned. |
static EdgeList |
ShortestPaths.singleSourceSingleSink(Graph graph,
Node s,
Node t,
boolean directed,
IDataProvider cost)
Similar to
ShortestPaths.singleSourceSingleSink(Graph, Node, Node, boolean, IDataProvider, INodeMap) but instead of returning
the shortest distance between the source and sink the actual shortest edge path between these nodes will be returned. |
static EdgeList[] |
GraphConnectivity.toEdgeListArray(Graph graph,
IEdgeMap compNum,
int maxCompNum)
Transforms the return values of
GraphConnectivity.biconnectedComponents(Graph, IEdgeMap, INodeMap) to an array of
EdgeList s, like it is returned by GraphConnectivity.biconnectedComponents(Graph) . |
static EdgeList |
SpanningTrees.uniform(Graph graph)
Calculates a spanning tree for the given graph in which each edge has a uniform cost of
1.0 . |
Modifier and Type | Method and Description |
---|---|
static NodeList |
Paths.constructNodePath(EdgeList path)
Constructs a
path of nodes from a given path of edges . |
static double |
SpanningTrees.cost(EdgeList treeEdges,
IDataProvider edgeCost)
Returns the overall cost of a previously calculated minimum spanning tree.
|
static void |
ShortestPaths.findShortestUniformPaths(Graph graph,
Node start,
IDataProvider targetMap,
boolean directed,
int maxLength,
EdgeList pathEdges,
NodeList pathNodes)
Finds all nodes and edges that belong to a shortest path from a
start node to a set of target nodes in the graph
not farther away than a given distance. |
void |
LayoutGraphHider.hide(EdgeList el)
Hides the given list of edges from the graph.
|
void |
GraphPartitionManager.hide(EdgeList el)
Hides the given list of edges from the graph.
|
static void |
Transitivity.transitiveClosure(Graph graph,
EdgeList addedEdges)
Calculates the transitive closure for a directed acyclic graph.
|
static void |
Transitivity.transitiveReduction(Graph graph,
EdgeList transitiveEdges)
Calculates the transitive reduction for a directed acyclic graph.
|
void |
LayoutGraphHider.unhideEdges(EdgeList edges)
Unhides the given edges.
|
Modifier and Type | Method and Description |
---|---|
static EdgeList[] |
Paths.findAllPaths(Graph graph,
Node startNode,
Node endNode,
boolean directed,
Predicate<EdgeList> filter)
A variant of
Paths.findAllPaths(Graph, Node, Node, boolean) which returns all simple directed or undirected paths
between two given nodes and, additionally, allows to specify a filter for the paths to be returned. |
Constructor and Description |
---|
EdgeList(EdgeList edgeList)
Creates a list that is initialized with an EdgeList.
|
Modifier and Type | Field and Description |
---|---|
protected EdgeList |
ParallelEdgeRouter.hiddenEdges
Holds the list of parallel edges that are hidden from the
core layout algorithm . |
Modifier and Type | Method and Description |
---|---|
EdgeList |
YGraphAdapter.createEdgeList(Iterable<IEdge> edges)
|
EdgeList |
LayoutGraph.getEdgeList()
Gets a list of all edges in the graph.
|
EdgeList |
GroupingSupport.getEdgesGoingIn(Node group)
Returns all edges crossing the bounds of the given group node such that their targets are inside the group node while
their sources lie outside the group node.
|
EdgeList |
GroupingSupport.getEdgesGoingOut(Node group)
Returns all edges crossing the bounds of the given group node such that their sources are inside the group node while
their targets lie outside the group node.
|
Modifier and Type | Method and Description |
---|---|
protected void |
ComponentLayout.arrangeComponents(LayoutGraph graph,
NodeList[] nodes,
EdgeList[] edges,
YRectangle[] bbox,
Rectangle2D[] boxes)
Produces a component graph layout.
|
protected void |
ComponentLayout.arrangeFields(LayoutGraph graph,
NodeList[] nodes,
EdgeList[] edges,
YRectangle[] bbox,
Rectangle2D[] boxes,
boolean circular,
boolean fill,
boolean fromSketch)
Arranges the bounding boxes of the components.
|
IListEnumerable<IEdge> |
YGraphAdapter.createEdgeEnumerable(EdgeList edges)
|
static void |
LayoutGraphUtilities.routeEdgesParallel(LayoutGraph graph,
Edge edge,
EdgeList edges,
double lineDistance)
Routes a list of edges which are incident to the same nodes in parallel, optionally joining the end points.
|
static void |
LayoutGraphUtilities.routeEdgesParallel(LayoutGraph graph,
Edge edge,
EdgeList edges,
double lineDistance,
boolean adjustE1)
Routes a list of edges which are incident to the same nodes in parallel, optionally joining the end points.
|
static void |
LayoutGraphUtilities.routeEdgesParallel(LayoutGraph graph,
Edge edge,
EdgeList edges,
double lineDistance,
boolean adjustE1,
boolean joinEnds)
Routes a list of edges which are incident to the same nodes in parallel, optionally joining the end points.
|
static void |
LayoutGraphUtilities.routeEdgesParallel(LayoutGraph graph,
Edge edge,
EdgeList edges,
double lineDistance,
boolean adjustE1,
boolean joinEnds,
double absJoinDist)
Routes a list of edges which are incident to the same nodes in parallel, optionally joining the end points.
|
static void |
LayoutGraphUtilities.routeEdgesParallel(LayoutGraph graph,
Edge edge,
EdgeList edges,
double lineDistance,
boolean adjustE1,
boolean joinEnds,
double absJoinDist,
double relJoinDist)
Routes a list of edges which are incident to the same nodes in parallel, optionally joining the end points.
|
protected void |
RecursiveGroupLayout.routeInterEdges(LayoutGraph graph,
EdgeList interEdges)
Reroutes the given inter-edges using the current
edge routing algorithm . |
protected void |
ComponentLayout.setOrigin(LayoutGraph graph,
NodeList nodes,
EdgeList edges,
YPoint origin,
YRectangle rectangle)
Moves the subgraph containing the given nodes and edges to the specified origin.
|
Modifier and Type | Method and Description |
---|---|
EdgeList |
IItemFactory.insertEdge(Edge edge)
|
Modifier and Type | Method and Description |
---|---|
int |
WeightedLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges)
Assigns all nodes of the graph to layers.
|
int |
TopologicalLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges)
This method assigns the nodes in the graph to layers.
|
int |
GivenLayersLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges)
Assigns the nodes of the graph to layers given by the
IDataProvider registered with the graph using key
GivenLayersLayerer.LAYER_ID_DPKEY . |
int |
BFSLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges)
Assigns the nodes of the graph to layers.
|
int |
AsIsLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges)
Assigns all nodes of the graph to layers.
|
int |
WeightedLayerer.assignNodeLayer(LayoutGraph graph,
INodeMap layerID,
EdgeList reversedEdges,
IDataProvider weight)
Assigns all nodes of the graph to layers.
|
void |
WeightedLayerer.makeDFSAcyclic(Graph graph,
EdgeList reversedEdges)
Removes cycles from the graph using a depth first search.
|
Modifier and Type | Method and Description |
---|---|
protected void |
PartialLayout.routeEdgesBetweenFixedElements(LayoutGraph graph,
EdgeList partialEdges)
This method is called during the
layout process and routes all partial edges that
connect two fixed elements. |
protected void |
PartialLayout.routeInterEdges(LayoutGraph graph,
EdgeList interEdges)
This method is called during the
layout process and routes all inter-edges. |
Modifier and Type | Method and Description |
---|---|
static EdgeList |
BusRepresentations.replaceHubsBySubgraph(LayoutGraph graph,
EdgeList[] hubEdgesLists,
IDataProvider hubMarker,
IDataProvider fixedMarker,
IDataAcceptor descriptorAcceptor)
Changes the representation of buses from hubs to complete subgraphs by creating new edges between regular nodes and
removing the hubs.
|
static EdgeList |
BusRepresentations.replaceHubsBySubgraph(LayoutGraph graph,
IDataProvider hubMarker,
IDataAcceptor descriptorAcceptor)
Changes the representation of buses from hubs to complete subgraphs.
|
static EdgeList[] |
BusRepresentations.toEdgeLists(Graph graph,
IDataProvider hubMarker)
Calculates for every bus represented by hubs a list of all of its edges.
|
Modifier and Type | Method and Description |
---|---|
static EdgeList |
BusRepresentations.replaceHubsBySubgraph(LayoutGraph graph,
EdgeList[] hubEdgesLists,
IDataProvider hubMarker,
IDataProvider fixedMarker,
IDataAcceptor descriptorAcceptor)
Changes the representation of buses from hubs to complete subgraphs by creating new edges between regular nodes and
removing the hubs.
|
Modifier and Type | Method and Description |
---|---|
void |
ChannelBasedPathRouting.route(EdgeList edges,
PathSearchResult pathSearchResult)
Routes the given edges.
|
protected void |
PathSearchContext.setEdges(EdgeList edges)
Specifies the edges that shall be routed.
|
Modifier and Type | Method and Description |
---|---|
protected EdgeList |
TreeLayout.directTree()
Returns a list of edges that need to be reversed in order to obtain a valid rooted and directed tree from the input
graph.
|
Modifier and Type | Method and Description |
---|---|
protected void |
TreeLayout.reverseEdges(EdgeList reversedEdges)
Reverses the direction of given edges.
|