103#ifndef vtkCellGridEvaluator_h 
  104#define vtkCellGridEvaluator_h 
  110#include "vtkTypeUInt32Array.h"  
  111#include "vtkTypeUInt64Array.h"  
  114#include <unordered_map> 
  116VTK_ABI_NAMESPACE_BEGIN
 
  157  vtkGetObjectMacro(ClassifierCellTypes, vtkTypeUInt32Array);
 
  160  vtkGetObjectMacro(ClassifierCellOffsets, vtkTypeUInt64Array);
 
  163  vtkGetObjectMacro(ClassifierPointIDs, vtkTypeUInt64Array);
 
  166  vtkGetObjectMacro(ClassifierCellIndices, vtkTypeUInt64Array);
 
  186    vtkTypeUInt64Array* cellIndices, 
vtkDataArray* pointParameters);
 
  217  vtkSetObjectMacro(ClassifierCellTypes, vtkTypeUInt32Array);
 
  220  vtkSetObjectMacro(ClassifierCellOffsets, vtkTypeUInt64Array);
 
  223  vtkSetObjectMacro(ClassifierPointIDs, vtkTypeUInt64Array);
 
  226  vtkSetObjectMacro(ClassifierCellIndices, vtkTypeUInt64Array);
 
  241  vtkTypeUInt32Array* ClassifierCellTypes{ 
nullptr };
 
  242  vtkTypeUInt64Array* ClassifierCellOffsets{ 
nullptr };
 
  243  vtkTypeUInt64Array* ClassifierPointIDs{ 
nullptr };
 
  244  vtkTypeUInt64Array* ClassifierCellIndices{ 
nullptr };
 
  255  std::unordered_map<vtkStringToken, AllocationsByCellType> 
Allocations;
 
A function defined over the physical domain of a vtkCellGrid.
 
Evaluate a field (vtkCellAttribute) at some points inside cells.
 
bool Finalize() override
Invoked during evaluation after all cell-grid responders are run.
 
~vtkCellGridEvaluator() override
 
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
 
void InterpolateCellParameters(vtkTypeUInt32Array *cellTypes, vtkTypeUInt64Array *cellOffsets, vtkTypeUInt64Array *cellIndices, vtkDataArray *pointParameters)
Configure the query to run only the interpolator.
 
void AllocateClassificationOutput()
 
std::unordered_map< vtkStringToken, AllocationsByCellType > Allocations
Internal state used during classification to compute the size of the output arrays.
 
vtkNew< vtkStaticPointLocator > Locator
 
void InterpolatePoints(vtkDataArray *points)
Configure the query to run the classifier followed by the interpolator.
 
static vtkCellGridEvaluator * New()
 
Phases
Indicate which phases of the query to perform.
 
void AllocatePositionOutput()
 
void StartPass() override
Invoked at the start of each pass.
 
vtkGetEnumMacro(PhasesToPerform, vtkCellGridEvaluator::Phases)
Return what work the query has been configured to do.
 
void AllocateInterpolationOutput()
 
bool IsAnotherPassRequired() override
Invoked at the end of each pass.
 
AllocationsByCellType & GetAllocationsForCellType(vtkStringToken cellType)
Return a reference to a cellType's allocated input points for responders to fill out.
 
bool Initialize() override
Invoked during evaluation before any cell-grid responders are run.
 
void ClassifyPoints(vtkDataArray *points)
Configure the query to run the classifier but not the interpolator.
 
Perform an operation on cells in a vtkCellMetadata instance.
 
Visualization data composed of cells of arbitrary type.
 
abstract superclass for arrays of numeric data
 
a simple class to control print indentation
 
Allocate and hold a VTK object.
 
concrete class for storing a set of points
 
quickly locate points in 3-space
 
Represent a string by its integer hash.
 
Hold per-type input point assignment and an offset for output arrays.
 
vtkIdType GetNumberOfOutputPoints() const
 
std::map< vtkIdType, std::set< vtkIdType > > InputPoints