VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkTreeLayoutStrategy.h 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 -------------------------------------------------------------------------*/ 00048 #ifndef vtkTreeLayoutStrategy_h 00049 #define vtkTreeLayoutStrategy_h 00050 00051 #include "vtkInfovisLayoutModule.h" // For export macro 00052 #include "vtkGraphLayoutStrategy.h" 00053 00054 class VTKINFOVISLAYOUT_EXPORT vtkTreeLayoutStrategy : public vtkGraphLayoutStrategy 00055 { 00056 public: 00057 static vtkTreeLayoutStrategy *New(); 00058 00059 vtkTypeMacro(vtkTreeLayoutStrategy, vtkGraphLayoutStrategy); 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 00063 void Layout(); 00064 00066 00069 vtkSetClampMacro(Angle, double, 0, 360); 00070 vtkGetMacro(Angle, double); 00072 00074 00077 vtkSetMacro(Radial, bool); 00078 vtkGetMacro(Radial, bool); 00079 vtkBooleanMacro(Radial, bool); 00081 00083 00087 vtkSetMacro(LogSpacingValue, double); 00088 vtkGetMacro(LogSpacingValue, double); 00090 00092 00095 vtkSetClampMacro(LeafSpacing, double, 0.0, 1.0); 00096 vtkGetMacro(LeafSpacing, double); 00098 00100 00101 vtkSetStringMacro(DistanceArrayName); 00102 vtkGetStringMacro(DistanceArrayName); 00104 00106 00107 vtkSetMacro(Rotation, double); 00108 vtkGetMacro(Rotation, double); 00110 00112 00115 vtkSetMacro(ReverseEdges, bool); 00116 vtkGetMacro(ReverseEdges, bool); 00117 vtkBooleanMacro(ReverseEdges, bool); 00119 00120 protected: 00121 vtkTreeLayoutStrategy(); 00122 ~vtkTreeLayoutStrategy(); 00123 00124 double Angle; 00125 bool Radial; 00126 double LogSpacingValue; 00127 double LeafSpacing; 00128 char *DistanceArrayName; 00129 double Rotation; 00130 bool ReverseEdges; 00131 00132 private: 00133 00134 vtkTreeLayoutStrategy(const vtkTreeLayoutStrategy&); // Not implemented. 00135 void operator=(const vtkTreeLayoutStrategy&); // Not implemented. 00136 }; 00137 00138 #endif 00139