java.lang.Object
org.graffiti.plugin.algorithm.AbstractAlgorithm
de.ipk_gatersleben.ag_nw.graffiti.plugins.layouters.resize_and_grid_layout.GridLayoutAlgorithm
All Implemented Interfaces:
UndoableEdit, Algorithm

public class GridLayoutAlgorithm
extends AbstractAlgorithm
Resize+Gridlayout: Resizes all nodes and places them on a grid.
Author:
Christian Klukas
  • Constructor Details

    • GridLayoutAlgorithm

      public GridLayoutAlgorithm()
  • Method Details

    • getName

      public String getName()
      Description copied from interface: Algorithm
      Returns the name (ID) of the algorithm.
      Returns:
      DOCUMENT ME!
    • getCategory

      public String getCategory()
      Description copied from interface: Algorithm
      Returns the category an algorithm should assigned to. Return NULL if the algorithm should be sorted directly in the plugin menu.
      Specified by:
      getCategory in interface Algorithm
      Overrides:
      getCategory in class AbstractAlgorithm
      Returns:
      The category an algorithm should assigned to.
    • getSetCategory

      public Set<Category> getSetCategory()
      Description copied from interface: Algorithm
      Returns a set of categories to classify this algorithm . e.g. return new HashSet(Arrays.asList( Category.GRAPH, Category.NODE )); is an algorithm, working on graphs and more specific on nodes
      Specified by:
      getSetCategory in interface Algorithm
      Overrides:
      getSetCategory in class AbstractAlgorithm
      Returns:
      Set of Category Enums that classify this algorithm.
    • check

      public void check() throws PreconditionException
      Description copied from interface: Algorithm
      Checks whether all preconditions of the current graph are satisfied.
      Specified by:
      check in interface Algorithm
      Overrides:
      check in class AbstractAlgorithm
      Throws:
      PreconditionException - if the preconditions of the current graph are not satisfied.
    • execute

      public void execute()
      Description copied from interface: Algorithm
      Executes the whole algorithm.
    • executeWithResize

      public void executeWithResize()
    • executeWithoutResize

      public void executeWithoutResize()
      Computes node coordinates and sets these coordinates
    • layoutOnGrid

      public void layoutOnGrid​(Collection<Node> workNodes, double widthHeightRatio, double xDistance, double yDistance)
    • getParameters

      public Parameter[] getParameters()
      Description copied from interface: Algorithm
      Returns a list of Parameter that are set for this algorithm.
      Specified by:
      getParameters in interface Algorithm
      Overrides:
      getParameters in class AbstractAlgorithm
      Returns:
      a collection of Parameter that are needed by the Algorithm.
    • setParameters

      public void setParameters​(Parameter[] params)
      Description copied from interface: Algorithm
      Sets the parameters for this algorithm. Must have the same types and order as the array returned by getParameter.
      Specified by:
      setParameters in interface Algorithm
      Overrides:
      setParameters in class AbstractAlgorithm
      Parameters:
      params - Parameter array
    • isLayoutAlgorithm

      public boolean isLayoutAlgorithm()
      Description copied from interface: Algorithm
      A LayoutAlgorithm should return true. All other types of algorithms should return false.
      Specified by:
      isLayoutAlgorithm in interface Algorithm
      Overrides:
      isLayoutAlgorithm in class AbstractAlgorithm
      Returns: