y.layout.hierarchic
Interface Drawer

All Known Implementing Classes:
AbstractDrawer, MedianDrawerWrapper

public interface Drawer

Interface for the third phase of the sugiyama algorithm. It assigns the coordinates to the nodes according to the defined range.


Field Summary
static Object NODE_BORDER_BOTTOM
          The key used to look up a data provider that, if present, must provide a double value for each node in the graph.
static Object NODE_BORDER_LEFT
          The key used to look up a data provider that, if present, must provide a double value for each node in the graph.
static Object NODE_BORDER_RIGHT
          The key used to look up a data provider that, if present, must provide a double value for each node in the graph.
static Object NODE_BORDER_TOP
          The key used to look up a data provider that, if present, must provide a double value for each node in the graph.
static Object NODE_DISTANCE
          The key used to look up a data provider that, if present, must provide a double value for each node in the graph.
 
Method Summary
 void assignCoordinates(LayoutGraph g, NodeList[] layerLists, DataProvider layerID)
          This method assigns the coordinates to the nodes.
 void setDummyMap(NodeMap dummy)
          Gives the drawer the opportunity to distinguish between dummy nodes and real ones. dummy stores the original edge for each dummy node or null for real nodes.
 void setMinimalEdgeDistance(double d)
          Sets the minimal distance between two edges in the same layer.
 void setMinimalLayerDistance(double d)
          Sets the minimal distance between two layers.
 void setMinimalMultiEdgeDistance(double d)
          Sets the minimal distance between two edges sharing source/target (aka multiedges) in the same layer.
 void setMinimalNodeDistance(double d)
          Sets the minimal distance between two nodes in the same layer.
 

Field Detail

NODE_BORDER_LEFT

public static final Object NODE_BORDER_LEFT
The key used to look up a data provider that, if present, must provide a double value for each node in the graph. The provided value is an additional overlap-free border added to the left side of the associated node.

Drawer implementations may ignore the data provided.


NODE_BORDER_RIGHT

public static final Object NODE_BORDER_RIGHT
The key used to look up a data provider that, if present, must provide a double value for each node in the graph. The provided value is an additional overlap-free border added to the right side of the associated node.

Drawer implementations may ignore the data provided.


NODE_BORDER_TOP

public static final Object NODE_BORDER_TOP
The key used to look up a data provider that, if present, must provide a double value for each node in the graph. The provided value is an additional overlap-free border added to the top side of the associated node.

Drawer implementations may ignore the data provided.


NODE_BORDER_BOTTOM

public static final Object NODE_BORDER_BOTTOM
The key used to look up a data provider that, if present, must provide a double value for each node in the graph. The provided value is an additional overlap-free border added to the bottom side of the associated node.

Drawer implementations may ignore the data provided.


NODE_DISTANCE

public static final Object NODE_DISTANCE
The key used to look up a data provider that, if present, must provide a double value for each node in the graph. The provided value specifies the minimum distance between the right border of the node and the left border of its righthand neighbor in the layer.

If a data provider with this key is registered with the input graph then the distance values set by the methods Drawer.setMinimalNodeDistance(double), Drawer.setMinimalEdgeDistance(double) and Drawer.setMinimalMultiEdgeDistance(double) will be ignored.

Drawer implementations may ignore the data provided.

Method Detail

assignCoordinates

public void assignCoordinates(LayoutGraph g,
                              NodeList[] layerLists,
                              DataProvider layerID)
This method assigns the coordinates to the nodes.


setDummyMap

public void setDummyMap(NodeMap dummy)
Gives the drawer the opportunity to distinguish between dummy nodes and real ones. dummy stores the original edge for each dummy node or null for real nodes.


setMinimalNodeDistance

public void setMinimalNodeDistance(double d)
Sets the minimal distance between two nodes in the same layer.


setMinimalEdgeDistance

public void setMinimalEdgeDistance(double d)
Sets the minimal distance between two edges in the same layer.


setMinimalMultiEdgeDistance

public void setMinimalMultiEdgeDistance(double d)
Sets the minimal distance between two edges sharing source/target (aka multiedges) in the same layer.


setMinimalLayerDistance

public void setMinimalLayerDistance(double d)
Sets the minimal distance between two layers.


© Copyright 2000-2003,
yWorks GmbH.
All rights reserved.

2003