edu.bsu.cs.algorithm
Class CanonicalOrdering
java.lang.Object
|
+--edu.bsu.cs.algorithm.Algorithm
|
+--edu.bsu.cs.algorithm.Fragments
|
+--edu.bsu.cs.algorithm.PlanarityTesting
|
+--edu.bsu.cs.algorithm.BlocksMerger
|
+--edu.bsu.cs.algorithm.MaximalPlanar
|
+--edu.bsu.cs.algorithm.CanonicalOrdering
- Direct Known Subclasses:
- PlanarityDrawing
- public class CanonicalOrdering
- extends MaximalPlanar
An animated implementation of the Canonical Ordering algorithm.
- Since:
- Feb 2001
- Version:
- 21 Apr 2001
- Author:
- Adrian Heinz
Method Summary |
void |
callOwnConstructor(JavaGraph jGraph,
Vector inputs,
Vector animation)
This method is called by Jedit for any algorithm it executes and must be used in any working algorithm. |
protected void |
CanonicalOrdering(JavaGraph jGraph,
Vector inputs,
Vector animation)
Called by the constructor to do all of the work |
protected edu.bsu.cs.algorithm.Region |
findTheCanonical(JavaGraph jGraph)
Core of the algorithm. |
protected void |
generateRegionsForOrderFour()
In the case of a Graph with 4 vertices, Planarity Testing will not generate
the regions, therefore we have to create them |
protected edu.bsu.cs.algorithm.Region |
insertRegionAt(JavaGraph jGraph,
edu.bsu.cs.algorithm.Region a,
edu.bsu.cs.algorithm.Region b,
int v)
Inserts region b into a replacing vertex v of a |
protected void |
thatCanonicalOrdering()
|
protected void |
updateListRegionCanonical(Vector theRegions)
In the case of being called from an external class, the regions have to be updated |
Methods inherited from class edu.bsu.cs.algorithm.PlanarityTesting |
completelyMarked, doPlanarity, executePlanarity, existDegreeFive, getAllTheBlocks, planarityTesting, removeUnmark, showAllRegions, showRegion, thatPlanarityTesting, theoremCheck |
Methods inherited from class edu.bsu.cs.algorithm.Fragments |
amountOfFragments, amountOfMarkedVertices, amountOfUnmarkEdges, closeOutOfCyclePaths, executeFragments, existEdge, findCycle, fragments, getFragmentAt, isThisEdgeMarked, that, unMarkGraphAB |
Methods inherited from class edu.bsu.cs.algorithm.Algorithm |
getCode, getDescription, getName, getType, setCode, setDescription, setFromResources, setName, setType, succeeded, succeeded |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
CanonicalOrdering
public CanonicalOrdering()
CanonicalOrdering
public CanonicalOrdering(JavaGraph jGraph,
Vector inputs,
Vector animation)
thatCanonicalOrdering
protected void thatCanonicalOrdering()
generateRegionsForOrderFour
protected void generateRegionsForOrderFour()
- In the case of a Graph with 4 vertices, Planarity Testing will not generate
the regions, therefore we have to create them
CanonicalOrdering
protected void CanonicalOrdering(JavaGraph jGraph,
Vector inputs,
Vector animation)
- Called by the constructor to do all of the work
insertRegionAt
protected edu.bsu.cs.algorithm.Region insertRegionAt(JavaGraph jGraph,
edu.bsu.cs.algorithm.Region a,
edu.bsu.cs.algorithm.Region b,
int v)
- Inserts region b into a replacing vertex v of a
updateListRegionCanonical
protected void updateListRegionCanonical(Vector theRegions)
- In the case of being called from an external class, the regions have to be updated
findTheCanonical
protected edu.bsu.cs.algorithm.Region findTheCanonical(JavaGraph jGraph)
- Core of the algorithm. It finds the canonical ordering of a maximal planar graph
jGraph
callOwnConstructor
public void callOwnConstructor(JavaGraph jGraph,
Vector inputs,
Vector animation)
- Description copied from class:
Algorithm
- This method is called by Jedit for any algorithm it executes and must be used in any working algorithm.
- Overrides:
callOwnConstructor
in class MaximalPlanar
- Parameters:
jGraph
- the edu.bsu.cs.graph.JavaGraph that the algorithm is performed oninputs
- a Vector of inputs that consists of
- An Integer, if the algorithm uses a single vertex as a starting point
- Two Integers if the algorithm uses two vertices as starting points
- A String if the algorithm starts off of typed input
- Nothing if the algorithm runs automatically on a graph
animation
- a Vector that is filled with AnimObjects as the algorithm proceeds. It must be instantiated before this method is called.