25 #ifndef vtkSurfaceLICComposite_h
26 #define vtkSurfaceLICComposite_h
30 #include "vtkRenderingLICOpenGL2Module.h"
53 void Initialize(
const vtkPixelExtent& winExt,
const std::deque<vtkPixelExtent>& blockExts,
54 int strategy,
double stepSize,
int nSteps,
int normalizeVectors,
int enhancedLIC,
88 COMPOSITE_INPLACE = 0,
116 return this->DisjointGuardExt[i];
143 int InitializeCompositeExtents(
float* vectors);
189 static int MakeDecompDisjoint(std::deque<vtkPixelExtent>& in, std::deque<vtkPixelExtent>& out);
203 int MakeDecompDisjoint(
204 const std::deque<vtkPixelExtent>& in, std::deque<vtkPixelExtent>& out,
float* vectors);
215 int VectorMax(
const std::deque<vtkPixelExtent>& exts,
float* vectors, std::vector<float>& vMax);
220 int AddGuardPixels(
const std::deque<vtkPixelExtent>& exts, std::deque<vtkPixelExtent>& guardExts,
221 std::deque<vtkPixelExtent>& disjointGuardExts,
float* vectors);
233 float GetFudgeFactor(
int nx[2]);
std::deque< vtkPixelExtent > DisjointGuardExt
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
std::deque< vtkPixelExtent > CompositeExt
ostream & operator<<(ostream &os, vtkSurfaceLICComposite &ss)
std::deque< vtkPixelExtent > GuardExt
const vtkPixelExtent & GetGuardExtent(int i=0) const
Get the extent of the domain over which to compute the LIC.
dynamic, self-adjusting array of float
vtkPixelExtent DataSetExt
virtual vtkOpenGLRenderWindow * GetContext()
const std::deque< vtkPixelExtent > & GetGuardExtents() const
const vtkPixelExtent & GetDisjointGuardExtent(int i=0) const
Get the extent of the domain over which to compute the LIC.
virtual void SetCommunicator(vtkPainterCommunicator *)
Set the communicator for parallel communication.
virtual int Gather(void *, int, int, vtkTextureObject *&)
Move a single buffer from the geometry decomp to the LIC decomp.
const std::deque< vtkPixelExtent > & GetCompositeExtents() const
const vtkPixelExtent & GetWindowExtent() const
Get the whole window extent.
const std::deque< vtkPixelExtent > & GetDisjointGuardExtents() const
a simple class to control print indentation
int NumberOfAAGuardPixels
virtual void SetContext(vtkOpenGLRenderWindow *)
Set the rendering context.
void SetStrategy(int val)
int NumberOfEEGuardPixels
std::deque< vtkPixelExtent > BlockExts
abstracts an OpenGL texture object.
const vtkPixelExtent & GetDataSetExtent() const
Get the whole dataset extent (all blocks).
Representation of a cartesian pixel plane and common operations on it.
const vtkPixelExtent & GetCompositeExtent(int i=0) const
Get the extent of the domain over which to compute the LIC.
A communicator that can safely be used inside a painter.
virtual int Scatter(void *, int, int, vtkTextureObject *&)
Move a single buffer from the LIC decomp to the geometry decomp In parallel THIS IS A COLLECTIVE OPER...
virtual int BuildProgram(float *)
Build programs to move data to the new decomp In parallel THIS IS A COLLECTIVE OPERATION.
This class decomposes the image space and shuffles image space data onto the new decomposition with t...
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
virtual void RestoreDefaultCommunicator()
Set the communicator to the default communicator.
friend VTKCOMMONCORE_EXPORT ostream & operator<<(ostream &os, vtkObjectBase &o)
int GetNumberOfCompositeExtents() const
Get the number of new extents assigned to this rank after the decomposition.