Interface LayoutEngine

All Known Implementing Classes:
HierarchicalBCEngine

public interface LayoutEngine
This interface class has been added to facilitate the addition of other layout engines to this package. Any class that wants to lay out a graph should implement this interface.
Version:
$Revision: 10153 $ - 24 Apr 2003 - Initial version (Ashraf M. Kibriya)
Author:
Ashraf M. Kibriya (amk14@cs.waikato.ac.nz)
  • Method Details

    • layoutGraph

      void layoutGraph()
      This method lays out the graph for better visualization
    • setNodesEdges

      void setNodesEdges(ArrayList<GraphNode> nodes, ArrayList<GraphEdge> edges)
      This method sets the nodes and edges vectors of the LayoutEngine
    • setNodeSize

      void setNodeSize(int nodeWidth, int nodeHeight)
      This method sets the allowed size of the node
    • getNodes

      ArrayList<GraphNode> getNodes()
      give access to set of graph nodes
    • getControlPanel

      JPanel getControlPanel()
      This method returns the extra controls panel for the LayoutEngine, if there is any.
    • getProgressBar

      JProgressBar getProgressBar()
      This method returns the progress bar for the LayoutEngine, which shows the progress of the layout process, if it takes a while to layout the graph
    • addLayoutCompleteEventListener

      void addLayoutCompleteEventListener(LayoutCompleteEventListener e)
      This method adds a LayoutCompleteEventListener to the LayoutEngine.
      Parameters:
      e - - The LayoutCompleteEventListener to add
    • removeLayoutCompleteEventListener

      void removeLayoutCompleteEventListener(LayoutCompleteEventListener e)
      This method removes a LayoutCompleteEventListener from the LayoutEngine.
      Parameters:
      e - - The LayoutCompleteEventListener to remove.
    • fireLayoutCompleteEvent

      void fireLayoutCompleteEvent(LayoutCompleteEvent e)
      This fires a LayoutCompleteEvent once a layout has been completed.