net.sourceforge.olduvai.accordiondrawer
Class StaticSplitAxis

java.lang.Object
  extended by net.sourceforge.olduvai.accordiondrawer.SplitAxis
      extended by net.sourceforge.olduvai.accordiondrawer.StaticSplitAxis
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable

public class StaticSplitAxis
extends SplitAxis

Static hook class for static split lines, as those used by TreeJuxtaposer are not dynamic for optimal performance.

Author:
James Slack
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class net.sourceforge.olduvai.accordiondrawer.SplitAxis
SplitAxis.AxisIterator, SplitAxis.Debug, SplitAxis.MovingSplitLine
 
Field Summary
private  SplitLine[] staticSplitLineArray
          Array of all split lines.
 
Fields inherited from class net.sourceforge.olduvai.accordiondrawer.SplitAxis
BLACK, debug, defaultMaxStuckValue, defaultMinStuckValue, defaultSplitValue, horizontal, LEFT, maxBound, maxStuckLine, minBound, minStuckLine, partitionedList, RED, RIGHT, small
 
Constructor Summary
StaticSplitAxis(AccordionDrawer ad, boolean horizontal, double minStuckValue, double maxStuckValue, int initLines, boolean reset, boolean staticLines)
          Wrapper constructor for Static Split Axes.
 
Method Summary
 void addSplitLine(int pos, SplitLine splitLine)
          Puts a split line at the given position in staticSplitLineArray.
 void createSplitLineArray(int size)
          Create the staticSplitLineArray.
 CellGeom getStaticSplitLineObject(int pos)
          Return the object at the given position, as a proper cell geom (TreeNode in TJ)
 
Methods inherited from class net.sourceforge.olduvai.accordiondrawer.SplitAxis
addCell, addCell, animatedReset, clear, computeBoundIndices, computePlaceThisFrame, deleteEntry, getAbsoluteValue, getAbsoluteValue, getBounds, getChildren, getMaxBound, getMaxBoundI, getMaxLine, getMaxLineForPixelValue, getMaxLineForPixelValue, getMaxStuckLine, getMaxStuckValue, getMinBound, getMinBoundI, getMinLine, getMinLineForPixelValue, getMinLineForPixelValue, getMinStuckLine, getMinStuckValue, getNextSplit, getPartitionedList, getPreviousSplit, getRoot, getRootIndex, getSize, getSplitFromAbsolute, getSplitFromIndex, getSplitIndex, getSplitIndexFromAbsolute, greaterThan, isHorizontal, isReal, iterator, lessThan, makePixelRanges, makePixelRanges, moveLine, print, putAt, resetSplitValues, resizeForest, setMaxStuckValue, setMinStuckValue, toString, updateSubtreeSize
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

staticSplitLineArray

private SplitLine[] staticSplitLineArray
Array of all split lines.

Constructor Detail

StaticSplitAxis

public StaticSplitAxis(AccordionDrawer ad,
                       boolean horizontal,
                       double minStuckValue,
                       double maxStuckValue,
                       int initLines,
                       boolean reset,
                       boolean staticLines)
Wrapper constructor for Static Split Axes. Only calls constructor for SplitAxis with the given parameters.

Parameters:
ad - Drawer that uses this split axis: SplitAxis.ad
horizontal - True if horizontal axis, false for vertical: SplitAxis.horizontal
minStuckValue - Position of minimum stuck line: SplitAxis.minStuckLine
maxStuckValue - Position of maximum stuck line: SplitAxis.maxStuckLine
initLines - Number of split lines to insert into the axis
reset - True: balance the split line tree after inserting initLines, false: do not balance, use default value for each split line: SplitAxis.defaultSplitValue
staticLines - True if using static split lines (TJ), false otherwise: SplitAxis.staticLines
Method Detail

createSplitLineArray

public void createSplitLineArray(int size)
Create the staticSplitLineArray.

Parameters:
size - Number of split lines needed for staticSplitLineArray

addSplitLine

public void addSplitLine(int pos,
                         SplitLine splitLine)
Puts a split line at the given position in staticSplitLineArray.

Parameters:
pos - Position, between 0 and the size of the split line.
splitLine - Split line to insert. StaticSplitLine objects reference their position in the array.

getStaticSplitLineObject

public CellGeom getStaticSplitLineObject(int pos)
Return the object at the given position, as a proper cell geom (TreeNode in TJ)

Parameters:
pos - The position of the requested object.
Returns:
The SplitLine.cullingObject at pos, casted to a CellGeom.