VTK  9.0.1
vtkStructuredGridLIC2D.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkStructuredGridLIC2D.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 =========================================================================*/
42 #ifndef vtkStructuredGridLIC2D_h
43 #define vtkStructuredGridLIC2D_h
44 
45 #include "vtkRenderingLICOpenGL2Module.h" // For export macro
47 #include "vtkWeakPointer.h" // needed for vtkWeakPointer.
48 
50 class vtkOpenGLHelper;
51 class vtkRenderWindow;
52 
53 class VTKRENDERINGLICOPENGL2_EXPORT vtkStructuredGridLIC2D : public vtkStructuredGridAlgorithm
54 {
55 public:
56  static vtkStructuredGridLIC2D* New();
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
61 
68  int SetContext(vtkRenderWindow* context);
69  vtkRenderWindow* GetContext();
71 
73 
78  vtkSetMacro(Steps, int);
79  vtkGetMacro(Steps, int);
81 
83 
95  vtkSetMacro(StepSize, double);
96  vtkGetMacro(StepSize, double);
98 
100 
103  vtkSetClampMacro(Magnification, int, 1, VTK_INT_MAX);
104  vtkGetMacro(Magnification, int);
106 
110  int GetFBOSuccess() { return this->FBOSuccess; }
111 
115  int GetLICSuccess() { return this->LICSuccess; }
116 
117 protected:
119  ~vtkStructuredGridLIC2D() override;
120 
127  int FillInputPortInformation(int port, vtkInformation* info) override;
128 
136 
137  int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
138  vtkInformationVector* outputVector) override;
139 
140  int RequestUpdateExtent(vtkInformation* request, vtkInformationVector** inputVector,
141  vtkInformationVector* outputVector) override;
142 
146  void AllocateOutputData(vtkDataObject* output, vtkInformation* outInfo);
147 
151  void AllocateScalars(vtkStructuredGrid* sg, vtkInformation* outInfo);
152 
157  int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
158  vtkInformationVector* outputVector) override;
159 
160  int Steps;
161  double StepSize;
164 
166  bool OwnWindow;
170 
171 private:
173  void operator=(const vtkStructuredGridLIC2D&) = delete;
174 };
175 
176 #endif
vtkStructuredGridLIC2D::StepSize
double StepSize
Definition: vtkStructuredGridLIC2D.h:161
VTK_INT_MAX
#define VTK_INT_MAX
Definition: vtkType.h:155
vtkStructuredGridAlgorithm.h
vtkStructuredGridLIC2D::Magnification
int Magnification
Definition: vtkStructuredGridLIC2D.h:162
vtkStructuredGridAlgorithm::RequestInformation
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkStructuredGridAlgorithm
Superclass for algorithms that produce only structured grid as output.
Definition: vtkStructuredGridAlgorithm.h:41
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkStructuredGridAlgorithm::New
static vtkStructuredGridAlgorithm * New()
vtkStructuredGridLIC2D::NoiseSource
vtkImageNoiseSource * NoiseSource
Definition: vtkStructuredGridLIC2D.h:165
vtkStructuredGridLIC2D::LICProgram
vtkOpenGLHelper * LICProgram
Definition: vtkStructuredGridLIC2D.h:169
vtkStructuredGrid
topologically regular array of data
Definition: vtkStructuredGrid.h:57
vtkStructuredGridLIC2D::LICSuccess
int LICSuccess
Definition: vtkStructuredGridLIC2D.h:168
vtkStructuredGridLIC2D::Steps
int Steps
Definition: vtkStructuredGridLIC2D.h:160
vtkImageNoiseSource
Create an image filled with noise.
Definition: vtkImageNoiseSource.h:33
vtkStructuredGridAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkStructuredGridAlgorithm::FillOutputPortInformation
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
vtkX3D::port
@ port
Definition: vtkX3D.h:453
vtkStructuredGridLIC2D::GetLICSuccess
int GetLICSuccess()
Check if LIC runs properly.
Definition: vtkStructuredGridLIC2D.h:115
vtkStructuredGridAlgorithm::RequestData
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkStructuredGridLIC2D::GetFBOSuccess
int GetFBOSuccess()
Check if FBO is started properly.
Definition: vtkStructuredGridLIC2D.h:110
vtkOpenGLHelper
Definition: vtkOpenGLHelper.h:30
vtkStructuredGridLIC2D
Definition: vtkStructuredGridLIC2D.h:53
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkStructuredGridLIC2D::FBOSuccess
int FBOSuccess
Definition: vtkStructuredGridLIC2D.h:167
vtkStructuredGridLIC2D::OwnWindow
bool OwnWindow
Definition: vtkStructuredGridLIC2D.h:166
vtkStructuredGridLIC2D::Context
vtkWeakPointer< vtkRenderWindow > Context
Definition: vtkStructuredGridLIC2D.h:163
vtkWeakPointer.h
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkX3D::info
@ info
Definition: vtkX3D.h:382
vtkStructuredGridAlgorithm::RequestUpdateExtent
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Definition: vtkStructuredGridAlgorithm.h:109
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:93
vtkDataObject
general representation of visualization data
Definition: vtkDataObject.h:59
vtkStructuredGridAlgorithm::FillInputPortInformation
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkWeakPointer< vtkRenderWindow >