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);
167 int NumberOfSamples[3];
168 int GridNumberOfSamples[3];
179 double BiasVector[3];
202 bool IsRegionMine(
const int regionIdx );
208 int GetRegionProcessId(
const int regionIdx );
213 void ComputeCellCentroid(
234 bool FoundDonor(
double q[3],
vtkUniformGrid *&donorGrid,
int &cellIdx);
242 bool SearchForDonorGridAtLevel(
244 unsigned int level,
unsigned int& gridId,
253 int ProbeGridPointInAMR(
254 double q[3],
unsigned int &donorLevel,
unsigned int& donorGridId,
263 int ProbeGridPointInAMRGraph(
double q[3],
264 unsigned int &donorLevel,
unsigned int &donorGridId,
271 void TransferToCellCenters(
278 void TransferToGridNodes(
284 void TransferSolution(
298 bool IsBlockWithinBounds(
double *grd );
310 void ComputeRegionParameters(
312 int N[3],
double min[3],
double max[3],
double h[3] );
317 void GetDomainParameters(
319 double domainMin[3],
double domainMax[3],
double h[3],
320 int dims[3],
double &rf );
325 bool RegionIntersectsWithAMR(
326 double domainMin[3],
double domainMax[3],
327 double regionMin[3],
double regionMax[3] );
333 void AdjustNumberOfSamplesInRegion(
const double Rh[3],
334 const bool outside[6],
int N[3] );
341 void ComputeLevelOfResolution(
342 const int N[3],
const double h0[3],
const double L[3],
const double rf);
351 const double h0[3],
const double domainMin[3],
const double domainMax[3],
352 const int dims[3],
bool outside[6] );
359 void ComputeAndAdjustRegionParameters(
365 void GetRegion(
double h[3] );
370 bool GridsIntersect(
double *g1,
double *g2 );
390 void SearchGridDecendants(
double q[3],
392 unsigned int maxLevel,
394 unsigned int &gridId,
401 bool SearchGridAncestors(
double q[3],
404 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.