TreeMapStripLayout Class Reference

Strip layout. Similar to the squared layout algorithm, but keeps neighbor relationships between child nodes. The aspect ratios are not as good as with the squared layout algorithm. More...

#include <TreeMap.h>

Inheritance diagram for TreeMapStripLayout:

TreeMapSliceLayout TreeMapLayout

List of all members.

Public Member Functions

void UpdateLayout (TreeMapItem *item, LayoutRectangle rc)
 Updates layout of given node.
void UpdateStripLayout (CSimpleValArray< TreeMapItem * > &items, int startIdx, int endIdx, LayoutRectangle rc)
 Updates strip layout of given node.
int UpdateOneLayoutStrip (CSimpleValArray< TreeMapItem * > &items, LayoutRectangle rcBox, int startIdx, int endIdx)
 Updates one strip int the layout (Strip is extended if avg aspect ratio increases).
float ComputeHorizontalBoxLayout (CSimpleValArray< TreeMapItem * > &items, LayoutRectangle rcBox, int startIdx, int nItems)
 Compute horizontal box layout for given strip.
float ComputeAverageAspectRatio (CSimpleValArray< TreeMapItem * > &items, int startIdx, int nItems)
 Calculate average aspect ratio.


Detailed Description

Strip layout. Similar to the squared layout algorithm, but keeps neighbor relationships between child nodes. The aspect ratios are not as good as with the squared layout algorithm.

Member Function Documentation

float TreeMapStripLayout::ComputeAverageAspectRatio ( CSimpleValArray< TreeMapItem * > &  items,
int  startIdx,
int  nItems 
)

Calculate average aspect ratio.

Parameters:
items Child nodes.
startIdx Start index.
nItems Number of items.

float TreeMapStripLayout::ComputeHorizontalBoxLayout ( CSimpleValArray< TreeMapItem * > &  items,
LayoutRectangle  rcBox,
int  startIdx,
int  nItems 
)

Compute horizontal box layout for given strip.

Parameters:
items Child nodes.
rc Bounds of the strip.
startIdx Start index.
nItems Number of items.

void TreeMapStripLayout::UpdateLayout ( TreeMapItem item,
LayoutRectangle  rc 
) [virtual]

Updates layout of given node.

Parameters:
item TreeMap node.
rc Bounds of the layout.

Reimplemented from TreeMapSliceLayout.

int TreeMapStripLayout::UpdateOneLayoutStrip ( CSimpleValArray< TreeMapItem * > &  items,
LayoutRectangle  rcBox,
int  startIdx,
int  endIdx 
)

Updates one strip int the layout (Strip is extended if avg aspect ratio increases).

Parameters:
items Child nodes.
rc Bounds of the strip.
startIdx Start index.
endIdx End index.

void TreeMapStripLayout::UpdateStripLayout ( CSimpleValArray< TreeMapItem * > &  items,
int  startIdx,
int  endIdx,
LayoutRectangle  rc 
)

Updates strip layout of given node.

Parameters:
items Child nodes.
startIdx Start index.
endIdx End index.
rc Bounds of the layout.


The documentation for this class was generated from the following files:

Generated on Thu May 28 08:24:23 2009 for Hierarchical Edge Bundles by  doxygen 1.5.9