VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImageIslandRemoval2D.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 =========================================================================*/ 00027 #ifndef __vtkImageIslandRemoval2D_h 00028 #define __vtkImageIslandRemoval2D_h 00029 00030 00031 #include "vtkImageAlgorithm.h" 00032 00033 //BTX 00034 typedef struct{ 00035 void *inPtr; 00036 void *outPtr; 00037 int idx0; 00038 int idx1; 00039 } vtkImage2DIslandPixel; 00040 //ETX 00041 00042 class VTK_IMAGING_EXPORT vtkImageIslandRemoval2D : public vtkImageAlgorithm 00043 { 00044 public: 00046 00047 static vtkImageIslandRemoval2D *New(); 00048 vtkTypeMacro(vtkImageIslandRemoval2D,vtkImageAlgorithm); 00049 void PrintSelf(ostream& os, vtkIndent indent); 00051 00053 00054 vtkSetMacro(AreaThreshold, int); 00055 vtkGetMacro(AreaThreshold, int); 00057 00059 00060 vtkSetMacro(SquareNeighborhood, int); 00061 vtkGetMacro(SquareNeighborhood, int); 00062 vtkBooleanMacro(SquareNeighborhood, int); 00064 00066 00067 vtkSetMacro(IslandValue, double); 00068 vtkGetMacro(IslandValue, double); 00070 00072 00073 vtkSetMacro(ReplaceValue, double); 00074 vtkGetMacro(ReplaceValue, double); 00076 00077 protected: 00078 vtkImageIslandRemoval2D(); 00079 ~vtkImageIslandRemoval2D() {}; 00080 00081 int AreaThreshold; 00082 int SquareNeighborhood; 00083 double IslandValue; 00084 double ReplaceValue; 00085 00086 virtual int RequestData(vtkInformation *, 00087 vtkInformationVector **, 00088 vtkInformationVector *); 00089 00090 private: 00091 vtkImageIslandRemoval2D(const vtkImageIslandRemoval2D&); // Not implemented. 00092 void operator=(const vtkImageIslandRemoval2D&); // Not implemented. 00093 }; 00094 00095 #endif 00096 00097 00098