This class is used to represent edges in the graph.
This class is used to represent edges in the graph. If bend = 0, a straight line is created, otherwise a quadratic curve is created.
the shape (line/curve) of the edge
the label for the created edge
whether it is a primary/transition/true or secondary/place node/false
the color of the edge
the origination node
the destination node
the amount of bend in the curve
This class is used to represent nodes in the graph.
This class is used to represent nodes in the graph.
the shape of the node
the label for the created node
whether it is a primary/transition/true or secondary/place node/false
the color of the node
the x-coordinate (top left)
the y-ccordinate (top left)
the width
the height
This class is used to represent tokens in the graph.
This class is used to represent tokens in the graph.
the shape of the token
the label for the created token
whether the token is primary/free/true to secondary/bound/false
the color of the token
the node the token is on
the width of the token
the height of the token
Add an edge to the graph.
Add an edge to the graph.
the edge to add
Add a free token to the graph.
Add a free token to the graph.
the free token to add
Add a node to the graph.
Add a node to the graph.
the node to add
List of edges in the graph
Show the flaw by printing the error message.
Show the flaw by printing the error message.
the method where the error occurred
the error message
List of free tokens in the graph (bound tokens must be in a nodes or edges list)
Get all the root nodes (those with no incoming edges).
List of nodes in the graph
Remove an edge from the graph.
Remove an edge from the graph.
the edge to remove
Remove a free token from the graph.
Remove a free token from the graph.
the free token to remove
Remove a node from the graph.
Remove a node from the graph.
the node to remove
Recursively visit all nodes in the graph.
Recursively visit all nodes in the graph.
the current node
the recursion level
Traverse the graph printing out its nodes and showing connectivity by indentation.
The
Dgraph
class is for defining graph structures suitable for animation. Graphs consist of nodes, edges and tokens. Tokens can be positioned within nodes or on edges. A graph animation class that uses this class would typically move the tokens by changing there location over time. This class supports both directed graphs and bipartite graphs. Directed graphs contain only primary nodes, while bipartite graphs have both primary and secondary nodes along with the rule that edges must go from primaries to secondaries or secondaries to primaries. Bipartite graphs can be used to represent Petri Nets by letting Transitions be primary nodes and Places be secondary nodes. Everything can be labeled (nodes, edges and tokens as well as the graph itself). Nodes and edges may be added to/removed from graphs, while tokens may be added to/removed from either nodes or edges. Tokens may also be free (not bound to nodes or edges).