Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Graphics/vtkGraphLayoutFilter.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkGraphLayoutFilter.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00040 #ifndef __vtkGraphLayoutFilter_h 00041 #define __vtkGraphLayoutFilter_h 00042 00043 #include "vtkPolyDataToPolyDataFilter.h" 00044 00045 class VTK_GRAPHICS_EXPORT vtkGraphLayoutFilter : public vtkPolyDataToPolyDataFilter 00046 { 00047 public: 00048 static vtkGraphLayoutFilter *New(); 00049 00050 vtkTypeRevisionMacro(vtkGraphLayoutFilter,vtkPolyDataToPolyDataFilter); 00051 void PrintSelf(ostream& os, vtkIndent indent); 00052 00054 00057 vtkSetVector6Macro(GraphBounds,float); 00058 vtkGetVectorMacro(GraphBounds,float,6); 00060 00062 00065 vtkSetMacro(AutomaticBoundsComputation, int); 00066 vtkGetMacro(AutomaticBoundsComputation, int); 00067 vtkBooleanMacro(AutomaticBoundsComputation, int); 00069 00071 00074 vtkSetClampMacro(MaxNumberOfIterations, int, 0, VTK_LARGE_INTEGER); 00075 vtkGetMacro(MaxNumberOfIterations, int); 00077 00079 00082 vtkSetClampMacro(CoolDownRate, float, 0.01, VTK_LARGE_FLOAT); 00083 vtkGetMacro(CoolDownRate, float); 00085 00086 // Turn on/off layout of graph in three dimensions. If off, graph 00087 // layout occurs in two dimensions. By default, three dimensional 00088 // layout is on. 00089 vtkSetMacro(ThreeDimensionalLayout, int); 00090 vtkGetMacro(ThreeDimensionalLayout, int); 00091 vtkBooleanMacro(ThreeDimensionalLayout, int); 00092 00093 protected: 00094 vtkGraphLayoutFilter(); 00095 ~vtkGraphLayoutFilter() {} 00096 00097 void Execute(); 00098 00099 float GraphBounds[6]; 00100 int AutomaticBoundsComputation; //Boolean controls automatic bounds calc. 00101 int MaxNumberOfIterations; //Maximum number of iterations. 00102 float CoolDownRate; //Cool-down rate. Note: Higher # = Slower rate. 00103 int ThreeDimensionalLayout; //Boolean for a third dimension. 00104 private: 00105 vtkGraphLayoutFilter(const vtkGraphLayoutFilter&); // Not implemented. 00106 void operator=(const vtkGraphLayoutFilter&); // Not implemented. 00107 }; 00108 00109 #endif