VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkRectilinearGridClip.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkRectilinearGridClip.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
27 #ifndef __vtkRectilinearGridClip_h
28 #define __vtkRectilinearGridClip_h
29 
30 // I did not make this a subclass of in place filter because
31 // the references on the data do not matter. I make no modifications
32 // to the data.
33 #include "vtkFiltersGeneralModule.h" // For export macro
35 
36 class VTKFILTERSGENERAL_EXPORT vtkRectilinearGridClip : public vtkRectilinearGridAlgorithm
37 {
38 public:
39  static vtkRectilinearGridClip *New();
41  void PrintSelf(ostream& os, vtkIndent indent);
42 
44 
45  void SetOutputWholeExtent(int extent[6], vtkInformation *outInfo=0);
46  void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY,
47  int minZ, int maxZ);
48  void GetOutputWholeExtent(int extent[6]);
49  int *GetOutputWholeExtent() {return this->OutputWholeExtent;}
51 
52  void ResetOutputWholeExtent();
53 
55 
58  vtkSetMacro(ClipData, int);
59  vtkGetMacro(ClipData, int);
60  vtkBooleanMacro(ClipData, int);
62 
64  void SetOutputWholeExtent(int piece, int numPieces);
65 
66 protected:
69 
70  // Time when OutputImageExtent was computed.
71  vtkTimeStamp CTime;
72  int Initialized; // Set the OutputImageExtent for the first time.
73  int OutputWholeExtent[6];
74 
75  int ClipData;
76 
77  virtual int RequestInformation (vtkInformation *,
78  vtkInformationVector **,
79  vtkInformationVector *);
80 
81  void CopyData(vtkRectilinearGrid *inData, vtkRectilinearGrid *outData, int *ext);
82 
83  virtual int RequestData(vtkInformation *,
84  vtkInformationVector **,
85  vtkInformationVector *);
86 
87 private:
88  vtkRectilinearGridClip(const vtkRectilinearGridClip&); // Not implemented.
89  void operator=(const vtkRectilinearGridClip&); // Not implemented.
90 };
91 
92 
93 
94 #endif
95 
96 
97 
a dataset that is topologically regular with variable spacing in the three coordinate directions ...
Superclass for algorithms that produce only rectilinear grid as output.
static vtkRectilinearGridAlgorithm * New()
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Reduces the image extent of the input.
void PrintSelf(ostream &os, vtkIndent indent)