VTK  9.3.20240425
vtkRectilinearGridClip.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
16#ifndef vtkRectilinearGridClip_h
17#define vtkRectilinearGridClip_h
18
19// I did not make this a subclass of in place filter because
20// the references on the data do not matter. I make no modifications
21// to the data.
22#include "vtkFiltersGeneralModule.h" // For export macro
24
25VTK_ABI_NAMESPACE_BEGIN
26class VTKFILTERSGENERAL_EXPORT vtkRectilinearGridClip : public vtkRectilinearGridAlgorithm
27{
28public:
31 void PrintSelf(ostream& os, vtkIndent indent) override;
32
34
37 void SetOutputWholeExtent(int extent[6], vtkInformation* outInfo = nullptr);
38 void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ);
39 void GetOutputWholeExtent(int extent[6]);
40 int* GetOutputWholeExtent() { return this->OutputWholeExtent; }
42
44
46
51 vtkSetMacro(ClipData, vtkTypeBool);
52 vtkGetMacro(ClipData, vtkTypeBool);
53 vtkBooleanMacro(ClipData, vtkTypeBool);
55
56protected:
58 ~vtkRectilinearGridClip() override = default;
59
60 // Time when OutputImageExtent was computed.
62 int Initialized; // Set the OutputImageExtent for the first time.
63 int OutputWholeExtent[6];
64
66
68
69 void CopyData(vtkRectilinearGrid* inData, vtkRectilinearGrid* outData, int* ext);
70
72
73private:
75 void operator=(const vtkRectilinearGridClip&) = delete;
76};
77
78VTK_ABI_NAMESPACE_END
79#endif
a simple class to control print indentation
Definition vtkIndent.h:108
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
int vtkTypeBool
Definition vtkABI.h:64