36 #ifndef __vtkStackedTreeLayoutStrategy_h
37 #define __vtkStackedTreeLayoutStrategy_h
39 #include "vtkInfovisLayoutModule.h"
51 void PrintSelf(ostream& os, vtkIndent indent);
57 virtual void Layout(vtkTree *inputTree, vtkDataArray *sectorArray,
58 vtkDataArray* sizeArray);
65 vtkDataArray* sizeArray, vtkTree *edgeRoutingTree);
70 vtkSetMacro(InteriorRadius,
double);
71 vtkGetMacro(InteriorRadius,
double);
76 vtkSetMacro(RingThickness,
double);
77 vtkGetMacro(RingThickness,
double);
84 vtkSetMacro(RootStartAngle,
double);
85 vtkGetMacro(RootStartAngle,
double);
92 vtkSetMacro(RootEndAngle,
double);
93 vtkGetMacro(RootEndAngle,
double);
99 vtkSetMacro(UseRectangularCoordinates,
bool);
100 vtkGetMacro(UseRectangularCoordinates,
bool);
101 vtkBooleanMacro(UseRectangularCoordinates,
bool);
107 vtkSetMacro(Reverse,
bool);
108 vtkGetMacro(Reverse,
bool);
109 vtkBooleanMacro(Reverse,
bool);
117 vtkSetMacro(InteriorLogSpacingValue,
double);
118 vtkGetMacro(InteriorLogSpacingValue,
double);
123 virtual vtkIdType
FindVertex(vtkTree* tree, vtkDataArray* array,
float pnt[2]);
137 void ComputeEdgeRoutingPoints(
138 vtkTree* inputTree, vtkDataArray* coordsArray, vtkTree* outputTree);
141 vtkTree *tree, vtkDataArray *coordsArray, vtkDataArray *sizeArray,
142 vtkIdType nchildren, vtkIdType parent, vtkIdType begin,
143 float parentInnerRad,
float parentOuterRad,
144 float parentStartAng,
float parentEndAng);
virtual void LayoutEdgePoints(vtkTree *inputTree, vtkDataArray *areaArray, vtkDataArray *sizeArray, vtkTree *edgeLayoutTree)
abstract superclass for all area layout strategies
virtual void Layout(vtkTree *inputTree, vtkDataArray *areaArray, vtkDataArray *sizeArray)=0
virtual vtkIdType FindVertex(vtkTree *tree, vtkDataArray *array, float pnt[2])=0
bool UseRectangularCoordinates
double InteriorLogSpacingValue
void PrintSelf(ostream &os, vtkIndent indent)
lays out tree in stacked boxes or rings