VTK  9.4.20250222
vtkHyperTreeGridTotalVisibleVolumeStrategy.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
14#ifndef vtkHyperTreeGridTotalVisibleVolumeStrategy_h
15#define vtkHyperTreeGridTotalVisibleVolumeStrategy_h
16
17#include "vtkFiltersHyperTreeModule.h" // For export macro
19#include "vtkNew.h"
20
21VTK_ABI_NAMESPACE_BEGIN
22
23class vtkCellData;
24class vtkDataArray;
25class vtkDoubleArray;
28
29class VTKFILTERSHYPERTREE_EXPORT vtkHyperTreeGridTotalVisibleVolumeStrategy
31{
32public:
35 void PrintSelf(ostream& os, vtkIndent indent) override;
36
41 bool Initialize(std::unordered_map<std::string, Field> fieldMap) override;
42
49 std::unordered_map<std::string, Field> fieldMap) override;
50
55
56private:
59
60 // Aggregated volume
61 double TotalVisibleVolume = 0;
62
63 // Output array
64 vtkNew<vtkDoubleArray> TotalVisibleVolumeArray;
65};
66
67VTK_ABI_NAMESPACE_END
68#endif // vtkHyperTreeGridTotalVisibleVolumeStrategy_h
represent and manipulate cell attribute data
abstract superclass for arrays of numeric data
dynamic, self-adjusting array of double
Abstract class for field definition used by vtkHyperTreeGridGenerateFields.
virtual void Compute(vtkHyperTreeGridNonOrientedGeometryCursor *)
Reimplement to compute the data for the current cell.
virtual void Initialize(vtkHyperTreeGrid *vtkMaybeUnused(inputHTG))
Reimplement to initialize internal structures based on the given input HTG.
Define the TotalVisibleVolume field data used in vtkHyperTreeGridGenerateFields.
void Compute(vtkHyperTreeGridNonOrientedGeometryCursor *cursor, vtkCellData *cellData, std::unordered_map< std::string, Field > fieldMap) override
Aggregates the volume of visible cells.
vtkDataArray * GetAndFinalizeArray() override
Set a unique tuple of TotalVisibleVolumeArray to TotalVisibleVolume and return the array.
bool Initialize(std::unordered_map< std::string, Field > fieldMap) override
Init internal variables from inputHTG.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkHyperTreeGridTotalVisibleVolumeStrategy * New()
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
a simple class to control print indentation
Definition vtkIndent.h:108
Allocate and hold a VTK object.
Definition vtkNew.h:167