VTK  9.0.1
vtkExtractTensorComponents.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExtractTensorComponents.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 =========================================================================*/
43 #ifndef vtkExtractTensorComponents_h
44 #define vtkExtractTensorComponents_h
45 
46 #include "vtkDataSetAlgorithm.h"
47 #include "vtkFiltersExtractionModule.h" // For export macro
48 
49 #define VTK_EXTRACT_COMPONENT 0
50 #define VTK_EXTRACT_EFFECTIVE_STRESS 1
51 #define VTK_EXTRACT_DETERMINANT 2
52 
53 class VTKFILTERSEXTRACTION_EXPORT vtkExtractTensorComponents : public vtkDataSetAlgorithm
54 {
55 public:
57  void PrintSelf(ostream& os, vtkIndent indent) override;
58 
64 
66 
69  vtkSetMacro(PassTensorsToOutput, vtkTypeBool);
70  vtkGetMacro(PassTensorsToOutput, vtkTypeBool);
71  vtkBooleanMacro(PassTensorsToOutput, vtkTypeBool);
73 
75 
78  vtkSetMacro(ExtractScalars, vtkTypeBool);
79  vtkGetMacro(ExtractScalars, vtkTypeBool);
80  vtkBooleanMacro(ExtractScalars, vtkTypeBool);
82 
84 
87  vtkSetVector2Macro(ScalarComponents, int);
88  vtkGetVectorMacro(ScalarComponents, int, 2);
90 
92 
98  vtkSetMacro(ScalarMode, int);
99  vtkGetMacro(ScalarMode, int);
100  void SetScalarModeToComponent() { this->SetScalarMode(VTK_EXTRACT_COMPONENT); }
102  void SetScalarModeToDeterminant() { this->SetScalarMode(VTK_EXTRACT_DETERMINANT); }
103  void ScalarIsComponent() { this->SetScalarMode(VTK_EXTRACT_COMPONENT); }
104  void ScalarIsEffectiveStress() { this->SetScalarMode(VTK_EXTRACT_EFFECTIVE_STRESS); }
105  void ScalarIsDeterminant() { this->SetScalarMode(VTK_EXTRACT_DETERMINANT); }
107 
109 
112  vtkSetMacro(ExtractVectors, vtkTypeBool);
113  vtkGetMacro(ExtractVectors, vtkTypeBool);
114  vtkBooleanMacro(ExtractVectors, vtkTypeBool);
116 
118 
122  vtkSetVector6Macro(VectorComponents, int);
123  vtkGetVectorMacro(VectorComponents, int, 6);
125 
127 
130  vtkSetMacro(ExtractNormals, vtkTypeBool);
131  vtkGetMacro(ExtractNormals, vtkTypeBool);
132  vtkBooleanMacro(ExtractNormals, vtkTypeBool);
134 
136 
140  vtkSetMacro(NormalizeNormals, vtkTypeBool);
141  vtkGetMacro(NormalizeNormals, vtkTypeBool);
142  vtkBooleanMacro(NormalizeNormals, vtkTypeBool);
144 
146 
150  vtkSetVector6Macro(NormalComponents, int);
151  vtkGetVectorMacro(NormalComponents, int, 6);
153 
155 
158  vtkSetMacro(ExtractTCoords, vtkTypeBool);
159  vtkGetMacro(ExtractTCoords, vtkTypeBool);
160  vtkBooleanMacro(ExtractTCoords, vtkTypeBool);
162 
164 
167  vtkSetClampMacro(NumberOfTCoords, int, 1, 3);
168  vtkGetMacro(NumberOfTCoords, int);
170 
172 
177  vtkSetVector6Macro(TCoordComponents, int);
178  vtkGetVectorMacro(TCoordComponents, int, 6);
180 
181 protected:
184 
186 
188 
193 
195  int ScalarComponents[2];
196 
197  int VectorComponents[6];
198 
200  int NormalComponents[6];
201 
203  int TCoordComponents[6];
204 
205 private:
207  void operator=(const vtkExtractTensorComponents&) = delete;
208 };
209 
210 #endif
void SetScalarModeToDeterminant()
Specify how to extract the scalar.
Store vtkAlgorithm input/output information.
int vtkTypeBool
Definition: vtkABI.h:69
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void ScalarIsEffectiveStress()
Specify how to extract the scalar.
void SetScalarModeToComponent()
Specify how to extract the scalar.
#define VTK_EXTRACT_DETERMINANT
a simple class to control print indentation
Definition: vtkIndent.h:33
extract parts of tensor and create a scalar, vector, normal, or texture coordinates.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.
void SetScalarModeToEffectiveStress()
Specify how to extract the scalar.
#define VTK_EXTRACT_COMPONENT
void ScalarIsComponent()
Specify how to extract the scalar.
void ScalarIsDeterminant()
Specify how to extract the scalar.
Store zero or more vtkInformation instances.
Superclass for algorithms that produce output of the same type as input.
static vtkDataSetAlgorithm * New()
#define VTK_EXTRACT_EFFECTIVE_STRESS