Class RescaleLayoutAlgorithm2D<V,E>

java.lang.Object
org.jgrapht.alg.drawing.RescaleLayoutAlgorithm2D<V,E>
Type Parameters:
V - the vertex type
E - the edge type
All Implemented Interfaces:
LayoutAlgorithm2D<V,E>

public class RescaleLayoutAlgorithm2D<V,E> extends Object
A layout algorithm which re-scales vertex positions to (center-scale,center+scale) in all dimensions. The algorithm first subtracts the mean on each axis separately, then all values are adjusted so that the maximum magnitude becomes scale. The result is finally translated back to the old center. This procedure preserves the aspect ratio.
Author:
Dimitrios Michail
  • Field Details

  • Constructor Details

    • RescaleLayoutAlgorithm2D

      public RescaleLayoutAlgorithm2D(double scale)
      Create a new layout algorithm
      Parameters:
      scale - the scale parameter
  • Method Details

    • layout

      public void layout(Graph<V,E> graph, LayoutModel2D<V> model)
      Description copied from interface: LayoutAlgorithm2D
      Layout a graph.
      Parameters:
      graph - the graph
      model - the layout model to use
    • getInitializer

      public Function<V,Point2D> getInitializer()
      Get the initializer
      Returns:
      the initializer
    • setInitializer

      public void setInitializer(Function<V,Point2D> initializer)
      Set the initializer
      Parameters:
      initializer - the initializer
    • init

      protected void init(Graph<V,E> graph, LayoutModel2D<V> model)
      Initialize a model using the initializer.
      Parameters:
      graph - the graph
      model - the model