Class 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 Detail

      • initializer

        protected Function<V,​Point2D> initializer
        A model initializer
    • Constructor Detail

      • RescaleLayoutAlgorithm2D

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

      • 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