Class CircularLayoutAlgorithm2D<V,​E>

  • Type Parameters:
    V - the vertex type
    E - the edge type
    All Implemented Interfaces:

    public class CircularLayoutAlgorithm2D<V,​E>
    extends Object
    Circular layout.

    The algorithm places the graph vertices on a circle evenly spaced. The vertices are iterated based on the iteration order of the vertex set of the graph. The order can be adjusted by providing an external comparator.

    Dimitrios Michail
    • Field Detail

      • radius

        protected double radius
      • vertexComparator

        protected Comparator<V> vertexComparator
      • initializer

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

      • CircularLayoutAlgorithm2D

        public CircularLayoutAlgorithm2D()
        Create a new layout algorithm
      • CircularLayoutAlgorithm2D

        public CircularLayoutAlgorithm2D​(double radius)
        Create a new layout algorithm
        radius - the circle radius
      • CircularLayoutAlgorithm2D

        public CircularLayoutAlgorithm2D​(double radius,
                                         Comparator<V> vertexComparator)
        Create a new layout algorithm. The algorithm will iterate over the vertices of the graph using the provided ordering.
        radius - the circle radius
        vertexComparator - the vertex comparator. Can be null.
    • Method Detail

      • layout

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

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

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

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