Package org.abego.treelayout.util
Class DefaultConfiguration<TreeNode>
java.lang.Object
org.abego.treelayout.util.DefaultConfiguration<TreeNode>
- Type Parameters:
TreeNode
- Type of elements used as nodes in the tree
- All Implemented Interfaces:
Configuration<TreeNode>
Specify a
Configuration
through configurable parameters, or falling
back to some frequently used defaults.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.abego.treelayout.Configuration
Configuration.AlignmentInLevel, Configuration.Location
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Configuration.AlignmentInLevel
private final double
private final double
private final Configuration.Location
-
Constructor Summary
ConstructorsConstructorDescriptionDefaultConfiguration
(double gapBetweenLevels, double gapBetweenNodes) Convenience constructor, using a default for the rootLocation and the alignmentInLevel.DefaultConfiguration
(double gapBetweenLevels, double gapBetweenNodes, Configuration.Location location) Convenience constructor, using a default for the alignmentInLevel.DefaultConfiguration
(double gapBetweenLevels, double gapBetweenNodes, Configuration.Location location, Configuration.AlignmentInLevel alignmentInLevel) Specifies the constants to be used for this Configuration. -
Method Summary
Modifier and TypeMethodDescriptionReturns the alignment of "smaller" nodes within a level.double
getGapBetweenLevels
(int nextLevel) Returns the size of the gap between subsequent levels.double
getGapBetweenNodes
(TreeNode node1, TreeNode node2) Returns the size of the minimal gap of nodes within a level.Returns the position of the root node in the diagram.
-
Field Details
-
gapBetweenLevels
private final double gapBetweenLevels -
gapBetweenNodes
private final double gapBetweenNodes -
location
-
alignmentInLevel
-
-
Constructor Details
-
DefaultConfiguration
public DefaultConfiguration(double gapBetweenLevels, double gapBetweenNodes, Configuration.Location location, Configuration.AlignmentInLevel alignmentInLevel) Specifies the constants to be used for this Configuration. -
DefaultConfiguration
public DefaultConfiguration(double gapBetweenLevels, double gapBetweenNodes, Configuration.Location location) Convenience constructor, using a default for the alignmentInLevel.- Parameters:
gapBetweenLevels
-gapBetweenNodes
-location
-
-
DefaultConfiguration
public DefaultConfiguration(double gapBetweenLevels, double gapBetweenNodes) Convenience constructor, using a default for the rootLocation and the alignmentInLevel.- Parameters:
gapBetweenLevels
-gapBetweenNodes
-
-
-
Method Details
-
getGapBetweenLevels
public double getGapBetweenLevels(int nextLevel) Description copied from interface:Configuration
Returns the size of the gap between subsequent levels.- Specified by:
getGapBetweenLevels
in interfaceConfiguration<TreeNode>
- Parameters:
nextLevel
- [nextLevel > 0]- Returns:
- the size of the gap between level (nextLevel-1) and nextLevel [result >= 0]
-
getGapBetweenNodes
Description copied from interface:Configuration
Returns the size of the minimal gap of nodes within a level.In the layout there will be a gap of at least the returned size between both given nodes.
node1 and node2 are at the same level and are placed next to each other.
- Specified by:
getGapBetweenNodes
in interfaceConfiguration<TreeNode>
- Parameters:
node1
-node2
-- Returns:
- the minimal size of the gap between node1 and node2 [result >= 0]
-
getRootLocation
Description copied from interface:Configuration
Returns the position of the root node in the diagram.By default the root of the tree is located at the top of the diagram. However one may also put it at the left, right or bottom of the diagram.
Possible Root Positions Top (Default) Left Right Bottom - Specified by:
getRootLocation
in interfaceConfiguration<TreeNode>
- Returns:
- the position of the root node in the diagram
-
getAlignmentInLevel
Description copied from interface:Configuration
Returns the alignment of "smaller" nodes within a level.By default all nodes of one level are centered in the level. However one may also align them "towards the root" or "away from the root". When the root is located at the top this means the nodes are aligned "to the top of the level" or "to the bottom of the level".
Alignment in level when root is at the top Center (Default) TowardsRoot ("top of level") AwayFromRoot ("bottom of level") Alignment in level when root is at the left:
Table: Possible Alignments of Nodes (when root at left side) Center (Default) TowardsRoot ("left of level") AwayFromRoot
("right of level")Of cause the alignment also works when the root is at the bottom or at the right side.
- Specified by:
getAlignmentInLevel
in interfaceConfiguration<TreeNode>
- Returns:
- the alignment of "smaller" nodes within a level
-