VTK
dox/Views/vtkTreeAreaView.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkTreeAreaView.h
00005 
00006   -------------------------------------------------------------------------
00007   Copyright 2008 Sandia Corporation.
00008   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00009   the U.S. Government retains certain rights in this software.
00010   -------------------------------------------------------------------------
00011 
00012   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00013   All rights reserved.
00014   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00015 
00016   This software is distributed WITHOUT ANY WARRANTY; without even
00017   the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00018   PURPOSE.  See the above copyright notice for more information.
00019 
00020 =========================================================================*/
00021 
00039 #ifndef __vtkTreeAreaView_h
00040 #define __vtkTreeAreaView_h
00041 
00042 #include "vtkRenderView.h"
00043 
00044 class vtkAreaLayoutStrategy;
00045 class vtkGraph;
00046 class vtkLabeledDataMapper;
00047 class vtkPolyDataAlgorithm;
00048 class vtkRenderedTreeAreaRepresentation;
00049 class vtkTree;
00050 
00051 class VTK_VIEWS_EXPORT vtkTreeAreaView : public vtkRenderView
00052 {
00053 public:
00054   static vtkTreeAreaView *New();
00055   vtkTypeMacro(vtkTreeAreaView, vtkRenderView);
00056   void PrintSelf(ostream& os, vtkIndent indent);
00057 
00059 
00061   vtkDataRepresentation* SetTreeFromInputConnection(vtkAlgorithmOutput* conn);
00062   vtkDataRepresentation* SetTreeFromInput(vtkTree* input);
00063   vtkDataRepresentation* SetGraphFromInputConnection(vtkAlgorithmOutput* conn);
00064   vtkDataRepresentation* SetGraphFromInput(vtkGraph* input);
00066 
00068 
00069   void SetAreaLabelArrayName(const char* name);
00070   const char* GetAreaLabelArrayName();
00072 
00074 
00075   void SetAreaSizeArrayName(const char* name);
00076   const char* GetAreaSizeArrayName();
00078 
00080 
00082   void SetLabelPriorityArrayName(const char* name);
00083   const char* GetLabelPriorityArrayName();
00085 
00087 
00088   void SetEdgeLabelArrayName(const char* name);
00089   const char* GetEdgeLabelArrayName();
00091 
00093 
00095   void SetAreaHoverArrayName(const char* name);
00096   const char* GetAreaHoverArrayName();
00098 
00100 
00101   void SetAreaLabelVisibility(bool vis);
00102   bool GetAreaLabelVisibility();
00103   vtkBooleanMacro(AreaLabelVisibility, bool);
00105 
00107 
00108   void SetEdgeLabelVisibility(bool vis);
00109   bool GetEdgeLabelVisibility();
00110   vtkBooleanMacro(EdgeLabelVisibility, bool);
00112 
00114 
00115   void SetAreaColorArrayName(const char* name);
00116   const char* GetAreaColorArrayName();
00118 
00120 
00121   void SetColorAreas(bool vis);
00122   bool GetColorAreas();
00123   vtkBooleanMacro(ColorAreas, bool);
00125 
00127 
00128   void SetEdgeColorArrayName(const char* name);
00129   const char* GetEdgeColorArrayName();
00131 
00133   void SetEdgeColorToSplineFraction();
00134 
00136 
00137   void SetShrinkPercentage(double value);
00138   double GetShrinkPercentage();
00140 
00142 
00143   void SetColorEdges(bool vis);
00144   bool GetColorEdges();
00145   vtkBooleanMacro(ColorEdges, bool);
00147 
00149 
00150   void SetBundlingStrength(double strength);
00151   double GetBundlingStrength();
00153 
00155 
00156   virtual void SetAreaLabelFontSize(const int size);
00157   virtual int GetAreaLabelFontSize();
00159 
00161 
00162   virtual void SetEdgeLabelFontSize(const int size);
00163   virtual int GetEdgeLabelFontSize();
00165 
00167 
00168   virtual void SetLayoutStrategy(vtkAreaLayoutStrategy* strategy);
00169   virtual vtkAreaLayoutStrategy* GetLayoutStrategy();
00171 
00173 
00174   virtual void SetUseRectangularCoordinates(bool rect);
00175   virtual bool GetUseRectangularCoordinates();
00176   vtkBooleanMacro(UseRectangularCoordinates, bool);
00178 
00180 
00181   virtual void SetEdgeScalarBarVisibility(bool b);
00182   virtual bool GetEdgeScalarBarVisibility();
00184 
00185 protected:
00186   vtkTreeAreaView();
00187   ~vtkTreeAreaView();
00188 
00190 
00193   virtual void SetAreaToPolyData(vtkPolyDataAlgorithm* areaToPoly);
00194   virtual vtkPolyDataAlgorithm* GetAreaToPolyData();
00196 
00198 
00200   virtual void SetAreaLabelMapper(vtkLabeledDataMapper* mapper);
00201   virtual vtkLabeledDataMapper* GetAreaLabelMapper();
00203 
00205 
00207   virtual vtkDataRepresentation* CreateDefaultRepresentation(vtkAlgorithmOutput* conn);
00208   virtual vtkRenderedTreeAreaRepresentation* GetTreeAreaRepresentation();
00210 
00211 private:
00212   vtkTreeAreaView(const vtkTreeAreaView&);  // Not implemented.
00213   void operator=(const vtkTreeAreaView&);  // Not implemented.
00214 };
00215 
00216 #endif