24 #ifndef vtkAMRResampleFilter_h
25 #define vtkAMRResampleFilter_h
27 #include "vtkFiltersAMRModule.h"
31 VTK_ABI_NAMESPACE_BEGIN
56 vtkSetVector3Macro(NumberOfSamples,
int);
57 vtkGetVector3Macro(NumberOfSamples,
int);
73 vtkSetMacro(DemandDrivenMode,
int);
74 vtkGetMacro(DemandDrivenMode,
int);
81 vtkSetMacro(NumberOfPartitions,
int);
82 vtkGetMacro(NumberOfPartitions,
int);
89 vtkSetVector3Macro(Min,
double);
90 vtkGetVector3Macro(Min,
double);
97 vtkSetVector3Macro(Max,
double);
98 vtkGetVector3Macro(Max,
double);
105 vtkSetMacro(UseBiasVector,
bool);
106 vtkGetMacro(UseBiasVector,
bool);
115 vtkSetVector3Macro(BiasVector,
double);
116 vtkGetVector3Macro(BiasVector,
double);
151 int NumberOfSamples[3];
152 int GridNumberOfSamples[3];
163 double BiasVector[3];
186 bool IsRegionMine(
int regionIdx);
192 int GetRegionProcessId(
int regionIdx);
216 bool FoundDonor(
double q[3],
vtkUniformGrid*& donorGrid,
int& cellIdx);
224 unsigned int& gridId,
int& donorCellIdx);
232 int ProbeGridPointInAMR(
double q[3],
unsigned int& donorLevel,
unsigned int& donorGridId,
241 int ProbeGridPointInAMRGraph(
double q[3],
unsigned int& donorLevel,
unsigned int& donorGridId,
271 bool IsBlockWithinBounds(
double* grd);
283 void ComputeRegionParameters(
289 void GetDomainParameters(
vtkOverlappingAMR* amr,
double domainMin[3],
double domainMax[3],
290 double h[3],
int dims[3],
double& rf);
295 bool RegionIntersectsWithAMR(
296 double domainMin[3],
double domainMax[3],
double regionMin[3],
double regionMax[3]);
302 void AdjustNumberOfSamplesInRegion(
const double Rh[3],
const bool outside[6],
int N[3]);
309 void ComputeLevelOfResolution(
const int N[3],
const double h0[3],
const double L[3],
double rf);
317 void SnapBounds(
const double h0[3],
const double domainMin[3],
const double domainMax[3],
318 const int dims[3],
bool outside[6]);
330 void GetRegion(
double h[3]);
335 bool GridsIntersect(
double* g1,
double* g2);
355 void SearchGridDecendants(
double q[3],
vtkOverlappingAMR* amrds,
unsigned int maxLevel,
356 unsigned int&
level,
unsigned int& gridId,
int&
id);
362 bool SearchGridAncestors(
370 VTK_ABI_NAMESPACE_END
vtkMultiProcessController * Controller
represent and manipulate point attribute data
vtkOverlappingAMR * AMRMetaData
vtkMultiBlockDataSet * ROI
Encloses a rectangular region of voxel like cells.
int NumberOfBlocksTestedForLevel
represent and manipulate cell attribute data
int NumberOfTimesLevelDown
int NumberOfBlocksVisSkipped
int NumberOfTimesFoundOnDonorLevel
Superclass for algorithms that produce only vtkMultiBlockDataSet as output.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
std::vector< int > BlocksToLoad
static vtkMultiBlockDataSetAlgorithm * New()
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
This filter is a concrete instance of vtkMultiBlockDataSetAlgorithm and provides functionality for ex...
a simple class to control print indentation
boost::graph_traits< vtkGraph * >::vertex_descriptor target(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
Composite dataset that organizes datasets into blocks.
hierarchical dataset of vtkUniformGrids
vtkTypeBool TransferToNodes
represent and manipulate fields of data
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Multiprocessing communication superclass.