VTK
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
55 {
56 public:
57  static vtkStructuredGridLIC2D* New();
59  void PrintSelf(ostream& os, vtkIndent indent) override;
60 
62 
69  int SetContext( vtkRenderWindow * context );
70  vtkRenderWindow * GetContext();
72 
74 
79  vtkSetMacro(Steps,int);
80  vtkGetMacro(Steps,int);
82 
84 
96  vtkSetMacro(StepSize,double);
97  vtkGetMacro(StepSize,double);
99 
101 
104  vtkSetClampMacro(Magnification, int, 1, VTK_INT_MAX);
105  vtkGetMacro(Magnification, int);
107 
111  int GetFBOSuccess() { return this->FBOSuccess; }
112 
116  int GetLICSuccess() { return this->LICSuccess; }
117 
118 protected:
120  ~vtkStructuredGridLIC2D() override;
121 
129  vtkInformation *info) override;
130 
138  vtkInformation *info) override;
139 
140  int RequestInformation(vtkInformation *request,
141  vtkInformationVector **inputVector,
142  vtkInformationVector *outputVector) override;
143 
144  int RequestUpdateExtent (vtkInformation *request,
145  vtkInformationVector **inputVector,
146  vtkInformationVector *outputVector) override;
147 
151  void AllocateOutputData(vtkDataObject *output,
152  vtkInformation *outInfo);
153 
157  void AllocateScalars(vtkStructuredGrid *sg, vtkInformation *outInfo);
158 
163  int RequestData(vtkInformation *request,
164  vtkInformationVector **inputVector,
165  vtkInformationVector *outputVector) override;
166 
167  int Steps;
168  double StepSize;
169  int Magnification;
171 
172  vtkImageNoiseSource* NoiseSource;
173  bool OwnWindow;
174  int FBOSuccess;
175  int LICSuccess;
177 
178 private:
180  void operator=(const vtkStructuredGridLIC2D&) = delete;
181 
182 };
183 
184 #endif
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
GPU implementation of a Line Integral Convolution, a technique for imaging vector fields.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store vtkAlgorithm input/output information.
int GetLICSuccess()
Check if LIC runs properly.
#define VTK_INT_MAX
Definition: vtkType.h:157
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
int GetFBOSuccess()
Check if FBO is started properly.
static vtkStructuredGridAlgorithm * New()
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
a simple class to control print indentation
Definition: vtkIndent.h:39
Superclass for algorithms that produce only structured grid as output.
Create an image filled with noise.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
create a window for renderers to draw into
topologically regular array of data
Store zero or more vtkInformation instances.
general representation of visualization data
Definition: vtkDataObject.h:64