Class GridLayouterAlgorithm

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

public class GridLayouterAlgorithm
extends AbstractAlgorithm
Gridlayouter algorithm: Performs a layout where every node is placed on a position of a grid.
Author:
Falk Schreiber, Christian Klukas
  • Constructor Details

    • GridLayouterAlgorithm

      public GridLayouterAlgorithm()
  • Method Details

    • getName

      public String getName()
      Returns the name of the algorithm.
      Returns:
      the name
    • 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
      Checks parameters
      Specified by:
      check in interface Algorithm
      Overrides:
      check in class AbstractAlgorithm
      Throws:
      PreconditionException - if xDistance, yDistance or widthHeightRatio is smaller than 0 or the graph does not exists
    • execute

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

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

      public static void layoutOnGrid​(Collection<Node> workNodes, double widthHeightRatio, double xDistance, double yDistance, int nodesOnLine, Point location)
    • getParameters

      public Parameter[] getParameters()
      Parameters
      Specified by:
      getParameters in interface Algorithm
      Overrides:
      getParameters in class AbstractAlgorithm
      Returns:
      parameters
    • setParameters

      public void setParameters​(Parameter[] params)
      Sets parameters
      Specified by:
      setParameters in interface Algorithm
      Overrides:
      setParameters in class AbstractAlgorithm
      Parameters:
      params -
    • 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: