VTK  9.1.0
vtkHyperTreeGridAxisReflection.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkHyperTreeGridAxisReflection.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=========================================================================*/
32#ifndef vtkHyperTreeGridAxisReflection_h
33#define vtkHyperTreeGridAxisReflection_h
34
35#include "vtkFiltersHyperTreeModule.h" // For export macro
37
39
40class VTKFILTERSHYPERTREE_EXPORT vtkHyperTreeGridAxisReflection : public vtkHyperTreeGridAlgorithm
41{
42public:
45 void PrintSelf(ostream& os, vtkIndent indent) override;
46
51 {
52 USE_X_MIN = 0,
53 USE_Y_MIN = 1,
54 USE_Z_MIN = 2,
55 USE_X_MAX = 3,
56 USE_Y_MAX = 4,
57 USE_Z_MAX = 5,
58 USE_X = 6,
59 USE_Y = 7,
60 USE_Z = 8
61 };
62
64
67 vtkSetClampMacro(Plane, int, 0, 8);
68 vtkGetMacro(Plane, int);
69 void SetPlaneToX() { this->SetPlane(USE_X); }
70 void SetPlaneToY() { this->SetPlane(USE_Y); }
71 void SetPlaneToZ() { this->SetPlane(USE_Z); }
72 void SetPlaneToXMin() { this->SetPlane(USE_X_MIN); }
73 void SetPlaneToYMin() { this->SetPlane(USE_Y_MIN); }
74 void SetPlaneToZMin() { this->SetPlane(USE_Z_MIN); }
75 void SetPlaneToXMax() { this->SetPlane(USE_X_MAX); }
76 void SetPlaneToYMax() { this->SetPlane(USE_Y_MAX); }
77 void SetPlaneToZMax() { this->SetPlane(USE_Z_MAX); }
79
81
85 vtkSetMacro(Center, double);
86 vtkGetMacro(Center, double);
88
89protected:
92
97
102
106 int Plane;
107
112 double Center;
113
114private:
116 void operator=(const vtkHyperTreeGridAxisReflection&) = delete;
117};
118
119#endif /* vtkHyperTreeGridAxisReflection */
general representation of visualization data
Superclass for algorithms that produce a hyper tree grid as output.
static vtkHyperTreeGridAxisReflection * New()
void SetPlaneToY()
Set the normal of the plane to use as mirror.
double Center
Position of the plane relative to given axis Only used if the reflection plane is X,...
int FillOutputPortInformation(int, vtkInformation *) override
For this algorithm the output is a vtkHyperTreeGrid instance.
int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *) override
Main routine to extract cells based on reflectioned value.
void SetPlaneToZMax()
Set the normal of the plane to use as mirror.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetPlaneToYMin()
Set the normal of the plane to use as mirror.
void SetPlaneToX()
Set the normal of the plane to use as mirror.
void SetPlaneToXMax()
Set the normal of the plane to use as mirror.
void SetPlaneToXMin()
Set the normal of the plane to use as mirror.
~vtkHyperTreeGridAxisReflection() override
void SetPlaneToZMin()
Set the normal of the plane to use as mirror.
void SetPlaneToYMax()
Set the normal of the plane to use as mirror.
int Plane
Required type of plane reflection.
void SetPlaneToZ()
Set the normal of the plane to use as mirror.
AxisReflectionPlane
Specify unique identifiers of available reflection planes.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
a simple class to control print indentation
Definition: vtkIndent.h:113
Store vtkAlgorithm input/output information.