00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00022 #ifndef __vtkTreeOrbitLayoutStrategy_h
00023 #define __vtkTreeOrbitLayoutStrategy_h
00024
00025 #include "vtkGraphLayoutStrategy.h"
00026
00027 class vtkPoints;
00028 class vtkTree;
00029
00030
00031 class VTK_INFOVIS_EXPORT vtkTreeOrbitLayoutStrategy : public vtkGraphLayoutStrategy
00032 {
00033 public:
00034 static vtkTreeOrbitLayoutStrategy *New();
00035
00036 vtkTypeRevisionMacro(vtkTreeOrbitLayoutStrategy, vtkGraphLayoutStrategy);
00037 void PrintSelf(ostream& os, vtkIndent indent);
00038
00040 void Layout();
00041
00043
00047 vtkSetMacro(LogSpacingValue, double);
00048 vtkGetMacro(LogSpacingValue, double);
00050
00052
00055 vtkSetClampMacro(LeafSpacing, double, 0.0, 1.0);
00056 vtkGetMacro(LeafSpacing, double);
00058
00059 protected:
00060 vtkTreeOrbitLayoutStrategy();
00061 ~vtkTreeOrbitLayoutStrategy();
00062
00063 void OrbitChildren(vtkTree *t, vtkPoints *p, vtkIdType parent, double radius);
00064
00065 double LogSpacingValue;
00066 double LeafSpacing;
00067
00068 private:
00069
00070 vtkTreeOrbitLayoutStrategy(const vtkTreeOrbitLayoutStrategy&);
00071 void operator=(const vtkTreeOrbitLayoutStrategy&);
00072 };
00073
00074 #endif
00075