36 #ifndef vtkAMRResampleFilter_h
37 #define vtkAMRResampleFilter_h
39 #include "vtkFiltersAMRModule.h"
67 vtkSetVector3Macro(NumberOfSamples,
int);
68 vtkGetVector3Macro(NumberOfSamples,
int);
75 vtkSetMacro(TransferToNodes,
int);
76 vtkGetMacro(TransferToNodes,
int);
84 vtkSetMacro(DemandDrivenMode,
int);
85 vtkGetMacro(DemandDrivenMode,
int);
92 vtkSetMacro(NumberOfPartitions,
int);
93 vtkGetMacro(NumberOfPartitions,
int);
100 vtkSetVector3Macro(Min,
double);
101 vtkGetVector3Macro(Min,
double);
108 vtkSetVector3Macro(Max,
double);
109 vtkGetVector3Macro(Max,
double);
116 vtkSetMacro(UseBiasVector,
bool);
117 vtkGetMacro(UseBiasVector,
bool);
126 vtkSetVector3Macro(BiasVector,
double);
127 vtkGetVector3Macro(BiasVector,
double);
162 int NumberOfSamples[3];
163 int GridNumberOfSamples[3];
174 double BiasVector[3];
197 bool IsRegionMine(
const int regionIdx);
203 int GetRegionProcessId(
const int regionIdx);
227 bool FoundDonor(
double q[3],
vtkUniformGrid*& donorGrid,
int& cellIdx);
235 unsigned int& gridId,
int& donorCellIdx);
243 int ProbeGridPointInAMR(
double q[3],
unsigned int& donorLevel,
unsigned int& donorGridId,
252 int ProbeGridPointInAMRGraph(
double q[3],
unsigned int& donorLevel,
unsigned int& donorGridId,
282 bool IsBlockWithinBounds(
double* grd);
294 void ComputeRegionParameters(
300 void GetDomainParameters(
vtkOverlappingAMR* amr,
double domainMin[3],
double domainMax[3],
301 double h[3],
int dims[3],
double& rf);
306 bool RegionIntersectsWithAMR(
307 double domainMin[3],
double domainMax[3],
double regionMin[3],
double regionMax[3]);
313 void AdjustNumberOfSamplesInRegion(
const double Rh[3],
const bool outside[6],
int N[3]);
320 void ComputeLevelOfResolution(
321 const int N[3],
const double h0[3],
const double L[3],
const double rf);
329 void SnapBounds(
const double h0[3],
const double domainMin[3],
const double domainMax[3],
330 const int dims[3],
bool outside[6]);
342 void GetRegion(
double h[3]);
347 bool GridsIntersect(
double* g1,
double* g2);
367 void SearchGridDecendants(
double q[3],
vtkOverlappingAMR* amrds,
unsigned int maxLevel,
368 unsigned int&
level,
unsigned int& gridId,
int&
id);
374 bool SearchGridAncestors(
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
represent and manipulate fields of data
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Multiprocessing communication superclass.