VTK  9.1.0
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=========================================================================*/
28#ifndef vtkRectilinearGridClip_h
29#define vtkRectilinearGridClip_h
30
31// I did not make this a subclass of in place filter because
32// the references on the data do not matter. I make no modifications
33// to the data.
34#include "vtkFiltersGeneralModule.h" // For export macro
36
37class VTKFILTERSGENERAL_EXPORT vtkRectilinearGridClip : public vtkRectilinearGridAlgorithm
38{
39public:
42 void PrintSelf(ostream& os, vtkIndent indent) override;
43
45
48 void SetOutputWholeExtent(int extent[6], vtkInformation* outInfo = nullptr);
49 void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ);
51 int* GetOutputWholeExtent() { return this->OutputWholeExtent; }
53
55
57
62 vtkSetMacro(ClipData, vtkTypeBool);
63 vtkGetMacro(ClipData, vtkTypeBool);
64 vtkBooleanMacro(ClipData, vtkTypeBool);
66
67protected:
69 ~vtkRectilinearGridClip() override = default;
70
71 // Time when OutputImageExtent was computed.
73 int Initialized; // Set the OutputImageExtent for the first time.
74 int OutputWholeExtent[6];
75
77
79
80 void CopyData(vtkRectilinearGrid* inData, vtkRectilinearGrid* outData, int* ext);
81
83
84private:
86 void operator=(const vtkRectilinearGridClip&) = delete;
87};
88
89#endif
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce only rectilinear grid as output.
Reduces the image extent of the input.
static vtkRectilinearGridClip * New()
~vtkRectilinearGridClip() override=default
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ)
The whole extent of the output has to be set explicitly.
void CopyData(vtkRectilinearGrid *inData, vtkRectilinearGrid *outData, int *ext)
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
void SetOutputWholeExtent(int extent[6], vtkInformation *outInfo=nullptr)
The whole extent of the output has to be set explicitly.
void GetOutputWholeExtent(int extent[6])
The whole extent of the output has to be set explicitly.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
int * GetOutputWholeExtent()
The whole extent of the output has to be set explicitly.
a dataset that is topologically regular with variable spacing in the three coordinate directions
record modification and/or execution time
Definition: vtkTimeStamp.h:52
@ extent
Definition: vtkX3D.h:351
int vtkTypeBool
Definition: vtkABI.h:69