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 "vtkGraphLayoutStrategy.h" 00052 00053 class VTK_INFOVIS_EXPORT vtkTreeLayoutStrategy : public vtkGraphLayoutStrategy 00054 { 00055 public: 00056 static vtkTreeLayoutStrategy *New(); 00057 00058 vtkTypeMacro(vtkTreeLayoutStrategy, vtkGraphLayoutStrategy); 00059 void PrintSelf(ostream& os, vtkIndent indent); 00060 00062 void Layout(); 00063 00065 00068 vtkSetClampMacro(Angle, double, 0, 360); 00069 vtkGetMacro(Angle, double); 00071 00073 00076 vtkSetMacro(Radial, bool); 00077 vtkGetMacro(Radial, bool); 00078 vtkBooleanMacro(Radial, bool); 00080 00082 00086 vtkSetMacro(LogSpacingValue, double); 00087 vtkGetMacro(LogSpacingValue, double); 00089 00091 00094 vtkSetClampMacro(LeafSpacing, double, 0.0, 1.0); 00095 vtkGetMacro(LeafSpacing, double); 00097 00099 00100 vtkSetStringMacro(DistanceArrayName); 00101 vtkGetStringMacro(DistanceArrayName); 00103 00105 00106 vtkSetMacro(Rotation, double); 00107 vtkGetMacro(Rotation, double); 00109 00111 00114 vtkSetMacro(ReverseEdges, bool); 00115 vtkGetMacro(ReverseEdges, bool); 00116 vtkBooleanMacro(ReverseEdges, bool); 00118 00119 protected: 00120 vtkTreeLayoutStrategy(); 00121 ~vtkTreeLayoutStrategy(); 00122 00123 double Angle; 00124 bool Radial; 00125 double LogSpacingValue; 00126 double LeafSpacing; 00127 char *DistanceArrayName; 00128 double Rotation; 00129 bool ReverseEdges; 00130 00131 private: 00132 00133 vtkTreeLayoutStrategy(const vtkTreeLayoutStrategy&); // Not implemented. 00134 void operator=(const vtkTreeLayoutStrategy&); // Not implemented. 00135 }; 00136 00137 #endif 00138