33 #ifndef vtkAMRResampleFilter_h 34 #define vtkAMRResampleFilter_h 36 #include "vtkFiltersAMRModule.h" 64 vtkSetVector3Macro(NumberOfSamples,
int);
65 vtkGetVector3Macro(NumberOfSamples,
int);
72 vtkSetMacro(TransferToNodes,
int);
73 vtkGetMacro(TransferToNodes,
int);
81 vtkSetMacro(DemandDrivenMode,
int);
82 vtkGetMacro(DemandDrivenMode,
int);
89 vtkSetMacro(NumberOfPartitions,
int);
90 vtkGetMacro(NumberOfPartitions,
int);
97 vtkSetVector3Macro(Min,
double);
98 vtkGetVector3Macro(Min,
double);
105 vtkSetVector3Macro(Max,
double);
106 vtkGetVector3Macro(Max,
double);
113 vtkSetMacro(UseBiasVector,
bool);
114 vtkGetMacro(UseBiasVector,
bool);
123 vtkSetVector3Macro(BiasVector,
double);
124 vtkGetVector3Macro(BiasVector,
double);
164 int NumberOfSamples[3];
165 int GridNumberOfSamples[3];
176 double BiasVector[3];
199 bool IsRegionMine(
const int regionIdx );
205 int GetRegionProcessId(
const int regionIdx );
210 void ComputeCellCentroid(
231 bool FoundDonor(
double q[3],
vtkUniformGrid *&donorGrid,
int &cellIdx);
239 bool SearchForDonorGridAtLevel(
241 unsigned int level,
unsigned int& gridId,
250 int ProbeGridPointInAMR(
251 double q[3],
unsigned int &donorLevel,
unsigned int& donorGridId,
260 int ProbeGridPointInAMRGraph(
double q[3],
261 unsigned int &donorLevel,
unsigned int &donorGridId,
268 void TransferToCellCenters(
275 void TransferToGridNodes(
281 void TransferSolution(
295 bool IsBlockWithinBounds(
double *grd );
307 void ComputeRegionParameters(
309 int N[3],
double min[3],
double max[3],
double h[3] );
314 void GetDomainParameters(
316 double domainMin[3],
double domainMax[3],
double h[3],
317 int dims[3],
double &rf );
322 bool RegionIntersectsWithAMR(
323 double domainMin[3],
double domainMax[3],
324 double regionMin[3],
double regionMax[3] );
330 void AdjustNumberOfSamplesInRegion(
const double Rh[3],
331 const bool outside[6],
int N[3] );
338 void ComputeLevelOfResolution(
339 const int N[3],
const double h0[3],
const double L[3],
const double rf);
348 const double h0[3],
const double domainMin[3],
const double domainMax[3],
349 const int dims[3],
bool outside[6] );
356 void ComputeAndAdjustRegionParameters(
362 void GetRegion(
double h[3] );
367 bool GridsIntersect(
double *g1,
double *g2 );
387 void SearchGridDecendants(
double q[3],
389 unsigned int maxLevel,
391 unsigned int &gridId,
398 bool SearchGridAncestors(
double q[3],
401 unsigned int &gridId,
vtkMultiProcessController * Controller
boost::graph_traits< vtkGraph * >::vertex_descriptor target(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
represent and manipulate point attribute data
vtkOverlappingAMR * AMRMetaData
vtkMultiBlockDataSet * ROI
Encloses a rectangular region of voxel like cells.
int NumberOfBlocksTestedForLevel
std::vector< int > BlocksToLoad
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.
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
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.