VTK
|
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