Class MapLayoutModel2D<V>

java.lang.Object
org.jgrapht.alg.drawing.model.MapLayoutModel2D<V>
Type Parameters:
V - the vertex type
All Implemented Interfaces:
Iterable<Map.Entry<V,Point2D>>, LayoutModel2D<V>

public class MapLayoutModel2D<V> extends Object implements LayoutModel2D<V>
A layout model which uses a hashtable to store the vertices' locations.
Author:
Dimitrios Michail
  • Field Details

    • drawableArea

      protected Box2D drawableArea
    • points

      protected Map<V,Point2D> points
    • fixed

      protected Set<V> fixed
  • Constructor Details

    • MapLayoutModel2D

      public MapLayoutModel2D(Box2D drawableArea)
      Create a new model.
      Parameters:
      drawableArea - the drawable area
  • Method Details

    • getDrawableArea

      public Box2D getDrawableArea()
      Description copied from interface: LayoutModel2D
      Get the drawable area of the model.
      Specified by:
      getDrawableArea in interface LayoutModel2D<V>
      Returns:
      the drawable area of the model
    • setDrawableArea

      public void setDrawableArea(Box2D drawableArea)
      Description copied from interface: LayoutModel2D
      Set the drawable area of the model.
      Specified by:
      setDrawableArea in interface LayoutModel2D<V>
      Parameters:
      drawableArea - the drawable area to use
    • iterator

      public Iterator<Map.Entry<V,Point2D>> iterator()
      Description copied from interface: LayoutModel2D
      Get an iterator with all vertices' locations. May return an empty iterator if the model does not store locations.
      Specified by:
      iterator in interface Iterable<V>
      Specified by:
      iterator in interface LayoutModel2D<V>
      Returns:
      an iterator which returns all vertices with their locations. May return an empty iterator if the model does not store locations.
    • get

      public Point2D get(V vertex)
      Description copied from interface: LayoutModel2D
      Get the last location of a particular vertex in the model. May return null if the vertex has not been assigned a location or if the particular implementation does not store the coordinates.
      Specified by:
      get in interface LayoutModel2D<V>
      Parameters:
      vertex - the graph vertex
      Returns:
      the last location of the vertex
    • put

      public Point2D put(V vertex, Point2D point)
      Description copied from interface: LayoutModel2D
      Set the location of a vertex.
      Specified by:
      put in interface LayoutModel2D<V>
      Parameters:
      vertex - the graph vertex
      point - the location
      Returns:
      the previous location or null if the vertex did not have a previous location or if the model does not store locations
    • setFixed

      public void setFixed(V vertex, boolean fixed)
      Description copied from interface: LayoutModel2D
      Set a point as being a "fixed-point" or not. It is the model's responsibility to make sure that changing the coordinates of a fixed point by calling LayoutModel2D.put(Object, Point2D) has no effect.
      Specified by:
      setFixed in interface LayoutModel2D<V>
      Parameters:
      vertex - a vertex
      fixed - whether it is a fixed point or not.
    • isFixed

      public boolean isFixed(V vertex)
      Description copied from interface: LayoutModel2D
      Check whether a vertex is a fixed point. It is the model's responsibility to make sure that changing the coordinates of a fixed point by calling LayoutModel2D.put(Object, Point2D) has no effect.
      Specified by:
      isFixed in interface LayoutModel2D<V>
      Parameters:
      vertex - the vertex
      Returns:
      true if a fixed point, false otherwise