VTK
dox/Filters/Extraction/vtkExtractUnstructuredGrid.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkExtractUnstructuredGrid.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 =========================================================================*/
00044 #ifndef __vtkExtractUnstructuredGrid_h
00045 #define __vtkExtractUnstructuredGrid_h
00046 
00047 #include "vtkFiltersExtractionModule.h" // For export macro
00048 #include "vtkUnstructuredGridAlgorithm.h"
00049 
00050 class vtkIncrementalPointLocator;
00051 
00052 class VTKFILTERSEXTRACTION_EXPORT vtkExtractUnstructuredGrid : public vtkUnstructuredGridAlgorithm
00053 {
00054 public:
00055   vtkTypeMacro(vtkExtractUnstructuredGrid,vtkUnstructuredGridAlgorithm);
00056   void PrintSelf(ostream& os, vtkIndent indent);
00057 
00059   static vtkExtractUnstructuredGrid *New();
00060 
00062 
00063   vtkSetMacro(PointClipping,int);
00064   vtkGetMacro(PointClipping,int);
00065   vtkBooleanMacro(PointClipping,int);
00067 
00069 
00070   vtkSetMacro(CellClipping,int);
00071   vtkGetMacro(CellClipping,int);
00072   vtkBooleanMacro(CellClipping,int);
00074 
00076 
00077   vtkSetMacro(ExtentClipping,int);
00078   vtkGetMacro(ExtentClipping,int);
00079   vtkBooleanMacro(ExtentClipping,int);
00081 
00083 
00084   vtkSetClampMacro(PointMinimum,vtkIdType,0,VTK_ID_MAX);
00085   vtkGetMacro(PointMinimum,vtkIdType);
00087 
00089 
00090   vtkSetClampMacro(PointMaximum,vtkIdType,0,VTK_ID_MAX);
00091   vtkGetMacro(PointMaximum,vtkIdType);
00093 
00095 
00096   vtkSetClampMacro(CellMinimum,vtkIdType,0,VTK_ID_MAX);
00097   vtkGetMacro(CellMinimum,vtkIdType);
00099 
00101 
00102   vtkSetClampMacro(CellMaximum,vtkIdType,0,VTK_ID_MAX);
00103   vtkGetMacro(CellMaximum,vtkIdType);
00105 
00107 
00109   void SetExtent(double xMin, double xMax, double yMin, double yMax,
00110                  double zMin, double zMax);
00112 
00114 
00116   void SetExtent(double extent[6]);
00117   double *GetExtent() { return this->Extent;};
00119 
00121 
00124   vtkSetMacro(Merging,int);
00125   vtkGetMacro(Merging,int);
00126   vtkBooleanMacro(Merging,int);
00128 
00130 
00132   void SetLocator(vtkIncrementalPointLocator *locator);
00133   vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
00135 
00137   void CreateDefaultLocator();
00138 
00140   unsigned long GetMTime();
00141 
00142 protected:
00143   vtkExtractUnstructuredGrid();
00144   ~vtkExtractUnstructuredGrid() {}
00145 
00146   virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00147 
00148   vtkIdType PointMinimum;
00149   vtkIdType PointMaximum;
00150   vtkIdType CellMinimum;
00151   vtkIdType CellMaximum;
00152   double Extent[6];
00153   int PointClipping;
00154   int CellClipping;
00155   int ExtentClipping;
00156 
00157   int Merging;
00158   vtkIncrementalPointLocator *Locator;
00159 private:
00160   vtkExtractUnstructuredGrid(const vtkExtractUnstructuredGrid&);  // Not implemented.
00161   void operator=(const vtkExtractUnstructuredGrid&);  // Not implemented.
00162 };
00163 
00164 #endif
00165 
00166