ParaView
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkKdTreeGenerator Class Reference

creates a vtkPKdTree using the partitioning information provided by a vtkExtentTranslator. More...

#include <vtkKdTreeGenerator.h>

Inherits vtkObject.

Public Types

typedef vtkObject Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
bool BuildTree (vtkExtentTranslator *translator, const int extents[6], const double origin[3], const double spacing[4])
 Builds the KdTree using the partitioning of the data. More...
 
void SetKdTree (vtkPKdTree *)
 Get/Set the kdtree which is updated in BuildTree. More...
 
virtual vtkPKdTree * GetKdTree ()
 Get/Set the kdtree which is updated in BuildTree. More...
 
virtual void SetNumberOfPieces (int)
 Get/Set the number of pieces. More...
 
virtual int GetNumberOfPieces ()
 Get/Set the number of pieces. More...
 

Static Public Member Functions

static vtkKdTreeGeneratorNew ()
 
static int IsTypeOf (const char *type)
 
static vtkKdTreeGeneratorSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkKdTreeGenerator ()
 
 ~vtkKdTreeGenerator ()
 
void FormRegions ()
 Obtains information from the extent translator about the partitioning of the input dataset among processes. More...
 
int FormTree (vtkKdNode *parent, vtkKdTreeGeneratorVector &regions_ids)
 
int CanPartition (int division_point, int dimension, vtkKdTreeGeneratorVector &ids, vtkKdTreeGeneratorVector &left, vtkKdTreeGeneratorVector &right)
 
bool ConvertToBounds (vtkKdNode *node)
 
void SetExtentTranslator (vtkExtentTranslator *)
 Get/Set the extent translator. More...
 
virtual vtkExtentTranslator * GetExtentTranslator ()
 Get/Set the extent translator. More...
 
virtual void SetWholeExtent (int, int, int, int, int, int)
 Get/Set the whole extent of the data. More...
 
virtual void SetWholeExtent (int [6])
 Get/Set the whole extent of the data. More...
 
virtual int * GetWholeExtent ()
 Get/Set the whole extent of the data. More...
 
virtual void GetWholeExtent (int &, int &, int &, int &, int &, int &)
 Get/Set the whole extent of the data. More...
 
virtual void GetWholeExtent (int [6])
 Get/Set the whole extent of the data. More...
 
virtual void SetOrigin (double, double, double)
 
virtual void SetOrigin (double [3])
 
virtual void SetSpacing (double, double, double)
 
virtual void SetSpacing (double [3])
 

Protected Attributes

vtkPKdTree * KdTree
 
vtkExtentTranslator * ExtentTranslator
 
double Origin [3]
 
double Spacing [3]
 
int WholeExtent [6]
 
int NumberOfPieces
 
int * Regions
 

Detailed Description

creates a vtkPKdTree using the partitioning information provided by a vtkExtentTranslator.

generates the KdTree

vtkKdTreeGenerator is used to generate a KdTree using the partitioning information garnered from a vtkExtentTranslator (or subclass). Since we need spatial bounds for the KdTree, we assume that structured data corresponding to the vtkExtentTranslator is an ImageData with the provided spacing and origin. The algorithm used can be summarized as under:

vtkKdTreeGenerator also needs to determine the assignment of regions to the processors. Since vtkPKdTree assigns Ids to the leaf nodes in inorder, we can determine the assignment by assigning temporary ids to all leaf nodes indication the piece number they represent and simply traversing the tree in inorder, and recording only the leaf IDs.

Definition at line 59 of file vtkKdTreeGenerator.h.

Member Typedef Documentation

§ Superclass

typedef vtkObject vtkKdTreeGenerator::Superclass

Definition at line 63 of file vtkKdTreeGenerator.h.

Constructor & Destructor Documentation

§ vtkKdTreeGenerator()

vtkKdTreeGenerator::vtkKdTreeGenerator ( )
protected

§ ~vtkKdTreeGenerator()

vtkKdTreeGenerator::~vtkKdTreeGenerator ( )
protected

Member Function Documentation

§ New()

static vtkKdTreeGenerator* vtkKdTreeGenerator::New ( )
static

§ GetClassName()

virtual const char* vtkKdTreeGenerator::GetClassName ( )
virtual

§ IsTypeOf()

static int vtkKdTreeGenerator::IsTypeOf ( const char *  type)
static

§ IsA()

virtual int vtkKdTreeGenerator::IsA ( const char *  type)
virtual

§ SafeDownCast()

static vtkKdTreeGenerator* vtkKdTreeGenerator::SafeDownCast ( vtkObject *  o)
static

§ PrintSelf()

void vtkKdTreeGenerator::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

§ SetKdTree()

void vtkKdTreeGenerator::SetKdTree ( vtkPKdTree *  )

Get/Set the kdtree which is updated in BuildTree.

§ GetKdTree()

virtual vtkPKdTree* vtkKdTreeGenerator::GetKdTree ( )
virtual

Get/Set the kdtree which is updated in BuildTree.

§ SetNumberOfPieces()

virtual void vtkKdTreeGenerator::SetNumberOfPieces ( int  )
virtual

Get/Set the number of pieces.

§ GetNumberOfPieces()

virtual int vtkKdTreeGenerator::GetNumberOfPieces ( )
virtual

Get/Set the number of pieces.

§ BuildTree()

bool vtkKdTreeGenerator::BuildTree ( vtkExtentTranslator *  translator,
const int  extents[6],
const double  origin[3],
const double  spacing[4] 
)

Builds the KdTree using the partitioning of the data.

§ SetExtentTranslator()

void vtkKdTreeGenerator::SetExtentTranslator ( vtkExtentTranslator *  )
protected

Get/Set the extent translator.

§ GetExtentTranslator()

virtual vtkExtentTranslator* vtkKdTreeGenerator::GetExtentTranslator ( )
protectedvirtual

Get/Set the extent translator.

§ SetWholeExtent() [1/2]

virtual void vtkKdTreeGenerator::SetWholeExtent ( int  ,
int  ,
int  ,
int  ,
int  ,
int   
)
protectedvirtual

Get/Set the whole extent of the data.

§ SetWholeExtent() [2/2]

virtual void vtkKdTreeGenerator::SetWholeExtent ( int  [6])
protectedvirtual

Get/Set the whole extent of the data.

§ GetWholeExtent() [1/3]

virtual int* vtkKdTreeGenerator::GetWholeExtent ( )
protectedvirtual

Get/Set the whole extent of the data.

§ GetWholeExtent() [2/3]

virtual void vtkKdTreeGenerator::GetWholeExtent ( int &  ,
int &  ,
int &  ,
int &  ,
int &  ,
int &   
)
protectedvirtual

Get/Set the whole extent of the data.

§ GetWholeExtent() [3/3]

virtual void vtkKdTreeGenerator::GetWholeExtent ( int  [6])
protectedvirtual

Get/Set the whole extent of the data.

§ SetOrigin() [1/2]

virtual void vtkKdTreeGenerator::SetOrigin ( double  ,
double  ,
double   
)
protectedvirtual

§ SetOrigin() [2/2]

virtual void vtkKdTreeGenerator::SetOrigin ( double  [3])
protectedvirtual

§ SetSpacing() [1/2]

virtual void vtkKdTreeGenerator::SetSpacing ( double  ,
double  ,
double   
)
protectedvirtual

§ SetSpacing() [2/2]

virtual void vtkKdTreeGenerator::SetSpacing ( double  [3])
protectedvirtual

§ FormRegions()

void vtkKdTreeGenerator::FormRegions ( )
protected

Obtains information from the extent translator about the partitioning of the input dataset among processes.

§ FormTree()

int vtkKdTreeGenerator::FormTree ( vtkKdNode *  parent,
vtkKdTreeGeneratorVector &  regions_ids 
)
protected

§ CanPartition()

int vtkKdTreeGenerator::CanPartition ( int  division_point,
int  dimension,
vtkKdTreeGeneratorVector &  ids,
vtkKdTreeGeneratorVector &  left,
vtkKdTreeGeneratorVector &  right 
)
protected

§ ConvertToBounds()

bool vtkKdTreeGenerator::ConvertToBounds ( vtkKdNode *  node)
protected

Member Data Documentation

§ KdTree

vtkPKdTree* vtkKdTreeGenerator::KdTree
protected

Definition at line 126 of file vtkKdTreeGenerator.h.

§ ExtentTranslator

vtkExtentTranslator* vtkKdTreeGenerator::ExtentTranslator
protected

Definition at line 127 of file vtkKdTreeGenerator.h.

§ Origin

double vtkKdTreeGenerator::Origin[3]
protected

Definition at line 129 of file vtkKdTreeGenerator.h.

§ Spacing

double vtkKdTreeGenerator::Spacing[3]
protected

Definition at line 130 of file vtkKdTreeGenerator.h.

§ WholeExtent

int vtkKdTreeGenerator::WholeExtent[6]
protected

Definition at line 132 of file vtkKdTreeGenerator.h.

§ NumberOfPieces

int vtkKdTreeGenerator::NumberOfPieces
protected

Definition at line 133 of file vtkKdTreeGenerator.h.

§ Regions

int* vtkKdTreeGenerator::Regions
protected

Definition at line 135 of file vtkKdTreeGenerator.h.


The documentation for this class was generated from the following file: