00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkTreeMapView.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00032 #ifndef __vtkTreeMapView_h 00033 #define __vtkTreeMapView_h 00034 00035 #include "vtkTreeAreaView.h" 00036 00037 class vtkBoxLayoutStrategy; 00038 class vtkSliceAndDiceLayoutStrategy; 00039 class vtkSquarifyLayoutStrategy; 00040 00041 class VTK_VIEWS_EXPORT vtkTreeMapView : public vtkTreeAreaView 00042 { 00043 public: 00044 static vtkTreeMapView *New(); 00045 vtkTypeRevisionMacro(vtkTreeMapView, vtkTreeAreaView); 00046 void PrintSelf(ostream& os, vtkIndent indent); 00047 00049 00050 virtual void SetLayoutStrategy(vtkAreaLayoutStrategy* s); 00051 virtual void SetLayoutStrategy(const char* name); 00052 virtual void SetLayoutStrategyToBox(); 00053 virtual void SetLayoutStrategyToSliceAndDice(); 00054 virtual void SetLayoutStrategyToSquarify(); 00056 00058 00059 virtual void SetFontSizeRange( 00060 const int maxSize, const int minSize, const int delta=4); 00061 virtual void GetFontSizeRange(int range[3]); 00063 00064 protected: 00065 vtkTreeMapView(); 00066 ~vtkTreeMapView(); 00067 00068 //BTX 00069 vtkSmartPointer<vtkBoxLayoutStrategy> BoxLayout; 00070 vtkSmartPointer<vtkSliceAndDiceLayoutStrategy> SliceAndDiceLayout; 00071 vtkSmartPointer<vtkSquarifyLayoutStrategy> SquarifyLayout; 00072 //ETX 00073 00074 private: 00075 vtkTreeMapView(const vtkTreeMapView&); // Not implemented. 00076 void operator=(const vtkTreeMapView&); // Not implemented. 00077 }; 00078 00079 #endif