VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile$ 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 =========================================================================*/ 00046 #ifndef __vtkReebGraphVolumeSkeletonFilter_h 00047 #define __vtkReebGraphVolumeSkeletonFilter_h 00048 00049 #include "vtkDataObjectAlgorithm.h" 00050 00051 class vtkReebGraph; 00052 class vtkTable; 00053 00054 class VTK_GRAPHICS_EXPORT vtkReebGraphVolumeSkeletonFilter : 00055 public vtkDataObjectAlgorithm 00056 { 00057 public: 00058 static vtkReebGraphVolumeSkeletonFilter* New(); 00059 vtkTypeMacro(vtkReebGraphVolumeSkeletonFilter, 00060 vtkDataObjectAlgorithm); 00061 void PrintSelf(ostream& os, vtkIndent indent); 00062 00064 00066 vtkSetMacro(NumberOfSamples, int); 00067 vtkGetMacro(NumberOfSamples, int); 00069 00071 00072 vtkSetMacro(NumberOfSmoothingIterations, int); 00073 vtkGetMacro(NumberOfSmoothingIterations, int); 00075 00077 00078 vtkSetMacro(FieldId, vtkIdType); 00079 vtkGetMacro(FieldId, vtkIdType); 00081 00082 vtkTable* GetOutput(); 00083 00084 protected: 00085 vtkReebGraphVolumeSkeletonFilter(); 00086 ~vtkReebGraphVolumeSkeletonFilter(); 00087 00088 vtkIdType FieldId; 00089 int NumberOfSamples, NumberOfSmoothingIterations; 00090 00091 int FillInputPortInformation(int portNumber, vtkInformation *); 00092 int FillOutputPortInformation(int portNumber, vtkInformation *info); 00093 00094 int RequestData(vtkInformation *request, 00095 vtkInformationVector **inputVector, vtkInformationVector *outputVector); 00096 00097 private: 00098 vtkReebGraphVolumeSkeletonFilter(const vtkReebGraphVolumeSkeletonFilter&); // Not implemented. 00099 void operator=(const vtkReebGraphVolumeSkeletonFilter&); // Not implemented. 00100 }; 00101 00102 #endif