29#ifndef vtkAngularPeriodicFilter_h 
   30#define vtkAngularPeriodicFilter_h 
   32#include "vtkFiltersParallelModule.h"  
   35VTK_ABI_NAMESPACE_BEGIN
 
   40#define VTK_ROTATION_MODE_DIRECT_ANGLE 0  
   41#define VTK_ROTATION_MODE_ARRAY_VALUE 1   
   56  vtkSetMacro(ComputeRotationsOnTheFly, 
bool);
 
   57  vtkGetMacro(ComputeRotationsOnTheFly, 
bool);
 
   58  vtkBooleanMacro(ComputeRotationsOnTheFly, 
bool);
 
   69  vtkGetMacro(RotationMode, 
int);
 
   80  vtkSetMacro(RotationAngle, 
double);
 
   81  vtkGetMacro(RotationAngle, 
double);
 
   89  vtkSetStringMacro(RotationArrayName);
 
   90  vtkGetStringMacro(RotationArrayName);
 
   97  vtkSetClampMacro(RotationAxis, 
int, 0, 2);
 
   98  vtkGetMacro(RotationAxis, 
int);
 
  108  vtkSetVector3Macro(Center, 
double);
 
  109  vtkGetVector3Macro(Center, 
double);
 
  122    vtkDataArray* inputArray, 
double angle, 
bool useCenter = 
true, 
bool normalize = 
false);
 
  163  bool ComputeRotationsOnTheFly;
 
  170  double RotationAngle;
 
A filter to produce mapped angular periodic multiblock dataset from a single block,...
 
virtual void GeneratePieceName(vtkCompositeDataSet *input, vtkCompositeDataIterator *inputLoc, vtkMultiPieceDataSet *output, vtkIdType outputId)
Generate a name for a piece in the periodic dataset from the input dataset.
 
static vtkAngularPeriodicFilter * New()
 
void SetPeriodNumber(vtkCompositeDataIterator *loc, vtkCompositeDataSet *output, int nbPeriod) override
Manually set the number of period on a specific leaf.
 
void ComputePeriodicMesh(vtkPointSet *dataset, vtkPointSet *rotatedDataset, double angle)
Compute periodic pointset, rotating point, using provided angle.
 
void SetRotationAxisToY()
Set/Get Rotation Axis, 0 for X, 1 for Y, 2 for Z.
 
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
 
~vtkAngularPeriodicFilter() override
 
vtkDataArray * TransformDataArray(vtkDataArray *inputArray, double angle, bool useCenter=true, bool normalize=false)
Create a transform copy of the provided data array.
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
void SetRotationModeToArrayValue()
Set/Get The rotation mode.
 
void SetRotationModeToDirectAngle()
Set/Get The rotation mode.
 
void ComputeAngularPeriodicData(vtkDataSetAttributes *data, vtkDataSetAttributes *rotatedData, double angle)
Compute periodic point/cell data, using provided angle.
 
vtkAngularPeriodicFilter()
 
void SetRotationAxisToX()
Set/Get Rotation Axis, 0 for X, 1 for Y, 2 for Z.
 
void AppendPeriodicPiece(double angle, vtkIdType iPiece, vtkDataObject *inputNode, vtkMultiPieceDataSet *multiPiece)
Append a periodic piece to dataset, by computing rotated mesh and data.
 
void SetRotationAxisToZ()
Set/Get Rotation Axis, 0 for X, 1 for Y, 2 for Z.
 
void CreatePeriodicDataSet(vtkCompositeDataIterator *loc, vtkCompositeDataSet *output, vtkCompositeDataSet *input) override
Create a periodic data, leaf of the tree.
 
superclass for composite data iterators
 
abstract superclass for composite (multi-block or AMR) datasets
 
abstract superclass for arrays of numeric data
 
general representation of visualization data
 
represent and manipulate attribute data in a dataset
 
a simple class to control print indentation
 
composite dataset to encapsulates pieces of dataset.
 
A filter to produce mapped periodic multiblock dataset from a single block.
 
concrete class for storing a set of points
 
#define VTK_ROTATION_MODE_ARRAY_VALUE
 
#define VTK_ROTATION_MODE_DIRECT_ANGLE