VTK: Filters/General/vtkRectilinearGridClip.h Source File

| VTK 9.3.1

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
23 #include "vtkRectilinearGridAlgorithm.h"
24
25 VTK_ABI_NAMESPACE_BEGIN
26 class VTKFILTERSGENERAL_EXPORT vtkRectilinearGridClip : public vtkRectilinearGridAlgorithm
27 {
28 public:
29 static vtkRectilinearGridClip* New();
30 vtkTypeMacro(vtkRectilinearGridClip, vtkRectilinearGridAlgorithm);
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
43 void ResetOutputWholeExtent();
44
46
51 vtkSetMacro(ClipData, vtkTypeBool);
52 vtkGetMacro(ClipData, vtkTypeBool);
53 vtkBooleanMacro(ClipData, vtkTypeBool);
55
56 protected:
57 vtkRectilinearGridClip();
58 ~vtkRectilinearGridClip() override = default;
59
60 // Time when OutputImageExtent was computed.
61 vtkTimeStamp CTime;
62 int Initialized; // Set the OutputImageExtent for the first time.
63 int OutputWholeExtent[6];
64
65 vtkTypeBool ClipData;
66
67 int RequestInformation(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
68
69 void CopyData(vtkRectilinearGrid* inData, vtkRectilinearGrid* outData, int* ext);
70
71 int RequestData(vtkInformation*, vtkInformationVector**, vtkInformationVector*) override;
72
73 private:
74 vtkRectilinearGridClip(const vtkRectilinearGridClip&) = delete;
75 void operator=(const vtkRectilinearGridClip&) = delete;
76 };
77
78 VTK_ABI_NAMESPACE_END
79 #endif
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:40
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:72
vtkRectilinearGridAlgorithm
Superclass for algorithms that produce only rectilinear grid as output.
Definition: vtkRectilinearGridAlgorithm.h:33
vtkRectilinearGridClip
Reduces the image extent of the input.
Definition: vtkRectilinearGridClip.h:27
vtkRectilinearGridClip::ResetOutputWholeExtent
void ResetOutputWholeExtent()
vtkRectilinearGridClip::~vtkRectilinearGridClip
~vtkRectilinearGridClip() override=default
vtkRectilinearGridClip::GetOutputWholeExtent
int * GetOutputWholeExtent()
The whole extent of the output has to be set explicitly.
Definition: vtkRectilinearGridClip.h:40
vtkRectilinearGridClip::Initialized
int Initialized
Definition: vtkRectilinearGridClip.h:62
vtkRectilinearGridClip::CTime
vtkTimeStamp CTime
Definition: vtkRectilinearGridClip.h:61
vtkRectilinearGridClip::vtkRectilinearGridClip
vtkRectilinearGridClip()
vtkRectilinearGridClip::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkRectilinearGridClip::New
static vtkRectilinearGridClip * New()
vtkRectilinearGridClip::SetOutputWholeExtent
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.
vtkRectilinearGridClip::CopyData
void CopyData(vtkRectilinearGrid *inData, vtkRectilinearGrid *outData, int *ext)
vtkRectilinearGridClip::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
vtkRectilinearGridClip::SetOutputWholeExtent
void SetOutputWholeExtent(int extent[6], vtkInformation *outInfo=nullptr)
The whole extent of the output has to be set explicitly.
vtkRectilinearGridClip::ClipData
vtkTypeBool ClipData
Definition: vtkRectilinearGridClip.h:65
vtkRectilinearGridClip::GetOutputWholeExtent
void GetOutputWholeExtent(int extent[6])
The whole extent of the output has to be set explicitly.
vtkRectilinearGridClip::RequestInformation
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
vtkRectilinearGrid
a dataset that is topologically regular with variable spacing in the three coordinate directions
Definition: vtkRectilinearGrid.h:56
vtkTimeStamp
record modification and/or execution time
Definition: vtkTimeStamp.h:34
vtkX3D::extent
@ extent
Definition: vtkX3D.h:345
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:64
vtkRectilinearGridAlgorithm.h