00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00034 #ifndef __vtkBoxLayoutStrategy_h
00035 #define __vtkBoxLayoutStrategy_h
00036 
00037 #include "vtkTreeMapLayoutStrategy.h"
00038 
00039 class VTK_INFOVIS_EXPORT vtkBoxLayoutStrategy : public vtkTreeMapLayoutStrategy 
00040 {
00041 public:
00042   static vtkBoxLayoutStrategy *New();
00043 
00044   vtkTypeMacro(vtkBoxLayoutStrategy,vtkTreeMapLayoutStrategy);
00045   void PrintSelf(ostream& os, vtkIndent indent);
00046 
00048 
00050   virtual void Layout(
00051       vtkTree* inputTree,
00052       vtkDataArray* coordsArray,
00053       vtkDataArray* sizeArray);
00055 
00056 protected:
00057   vtkBoxLayoutStrategy();
00058   ~vtkBoxLayoutStrategy();
00059 
00060 private:
00061 
00062   void LayoutChildren(vtkTree *inputTree, vtkDataArray *coordsArray,
00063     vtkIdType parentId,
00064     float parentMinX, float parentMaxX,
00065     float parentMinY, float parentMaxY);
00066 
00067   vtkBoxLayoutStrategy(const vtkBoxLayoutStrategy&);  
00068   void operator=(const vtkBoxLayoutStrategy&);  
00069 };
00070 
00071 #endif
00072