VTK  9.4.20250222
vtkHyperTreeGridGenerateFields.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2// SPDX-License-Identifier: BSD-3-Clause
25#ifndef vtkHyperTreeGridGenerateFields_h
26#define vtkHyperTreeGridGenerateFields_h
27
28#include "vtkFiltersHyperTreeModule.h" // For export macro
30#include "vtkHyperTreeGridGenerateFieldStrategy.h" // For vtkHyperTreeGridGenerateFieldStrategy
31
32#include <unordered_map>
33
34VTK_ABI_NAMESPACE_BEGIN
35class vtkCellData;
38
39class VTKFILTERSHYPERTREE_EXPORT vtkHyperTreeGridGenerateFields : public vtkHyperTreeGridAlgorithm
40{
41public:
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
47
52 virtual void SetComputeCellSizeArray(bool enable);
53 vtkBooleanMacro(ComputeCellSizeArray, bool);
55
57
61 virtual std::string GetCellSizeArrayName();
62 virtual void SetCellSizeArrayName(std::string name);
64
66
71 virtual void SetComputeValidCellArray(bool enable);
72 vtkBooleanMacro(ComputeValidCellArray, bool);
74
76
80 virtual std::string GetValidCellArrayName();
81 virtual void SetValidCellArrayName(std::string name);
83
85
90 virtual void SetComputeCellCenterArray(bool enable);
91 vtkBooleanMacro(ComputeCellCenterArray, bool);
93
95
99 virtual std::string GetCellCenterArrayName();
100 virtual void SetCellCenterArrayName(std::string name);
102
104
109 virtual void SetComputeTotalVisibleVolumeArray(bool enable);
110 vtkBooleanMacro(ComputeTotalVisibleVolumeArray, bool);
112
114
118 virtual std::string GetTotalVisibleVolumeArrayName();
119 virtual void SetTotalVisibleVolumeArrayName(std::string name);
121
122protected:
125
130
131private:
133 void operator=(const vtkHyperTreeGridGenerateFields&) = delete;
134
139 void ProcessFields(
141
145 void ProcessNode(vtkHyperTreeGridNonOrientedGeometryCursor* cursor,
146 vtkDataObject::AttributeTypes type, vtkCellData* outputCellData);
147
148 // Cell Data
149 std::string DefaultCellSizeArrayName = "CellSize";
150 std::string DefaultValidCellArrayName = "ValidCell";
151 std::string DefaultCellCenterArrayName = "CellCenter";
152
153 // Field Data
154 std::string DefaultTotalVisibleVolumeArrayName = "TotalVisibleVolume";
155
156 std::unordered_map<std::string, vtkHyperTreeGridGenerateFieldStrategy::Field> Fields;
157};
158
159VTK_ABI_NAMESPACE_END
160#endif
represent and manipulate cell attribute data
general representation of visualization data
AttributeTypes
Possible attribute types.
Superclass for algorithms that produce a hyper tree grid as output.
virtual void SetValidCellArrayName(std::string name)
Get/Set the name used for the cell validity array.
virtual bool GetComputeCellCenterArray()
Enable/disable the computation of the CellCenter array.
virtual void SetCellSizeArrayName(std::string name)
Get/Set the name used for the cell size array.
virtual std::string GetCellCenterArrayName()
Get/Set the name used for the cell center array.
virtual void SetComputeCellCenterArray(bool enable)
Enable/disable the computation of the CellCenter array.
virtual void SetTotalVisibleVolumeArrayName(std::string name)
Get/Set the name used for the total visible volume array.
virtual std::string GetValidCellArrayName()
Get/Set the name used for the cell validity array.
virtual std::string GetTotalVisibleVolumeArrayName()
Get/Set the name used for the total visible volume array.
int ProcessTrees(vtkHyperTreeGrid *, vtkDataObject *) override
Main filter routine : process the HTG cell data and then field data.
virtual void SetComputeCellSizeArray(bool enable)
Enable/disable the computation of the CellSize array.
virtual bool GetComputeValidCellArray()
Enable/disable the computation of the ValidCell array.
static vtkHyperTreeGridGenerateFields * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkHyperTreeGridGenerateFields() override=default
virtual void SetComputeTotalVisibleVolumeArray(bool enable)
Enable/disable the computation of the TotalVisibleVolume array.
virtual void SetComputeValidCellArray(bool enable)
Enable/disable the computation of the ValidCell array.
virtual bool GetComputeCellSizeArray()
Enable/disable the computation of the CellSize array.
virtual bool GetComputeTotalVisibleVolumeArray()
Enable/disable the computation of the TotalVisibleVolume array.
virtual void SetCellCenterArrayName(std::string name)
Get/Set the name used for the cell center array.
virtual std::string GetCellSizeArrayName()
Get/Set the name used for the cell size array.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
a simple class to control print indentation
Definition vtkIndent.h:108