#include <vtkBSPCuts.h>
This class converts between the vtkKdTree representation of a tree of vtkKdNodes (used by vtkDistributedDataFilter) and a compact array representation that might be provided by a graph partitioning library like Zoltan. Such a representation could be used in message passing.
Definition at line 42 of file vtkBSPCuts.h.
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | CreateCuts (double *bounds, int ncuts, int *dim, double *coord, int *lower, int *upper, double *lowerDataCoord, double *upperDataCoord, int *npoints) |
void | CreateCuts (vtkKdNode *kd) |
vtkKdNode * | GetKdNodeTree () |
virtual int | GetNumberOfCuts () |
int | GetArrays (int len, int *dim, double *coord, int *lower, int *upper, double *lowerDataCoord, double *upperDataCoord, int *npoints) |
int | Equals (vtkBSPCuts *other, double tolerance=0.0) |
void | PrintTree () |
void | PrintArrays () |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkBSPCuts * | SafeDownCast (vtkObject *o) |
static vtkBSPCuts * | New () |
Protected Member Functions | |
vtkBSPCuts () | |
~vtkBSPCuts () | |
void | BuildTree (vtkKdNode *kd, int idx) |
int | WriteArray (vtkKdNode *kd, int loc) |
void | ResetArrays () |
void | AllocateArrays (int size) |
vtkBSPCuts (const vtkBSPCuts &) | |
void | operator= (const vtkBSPCuts &) |
Static Protected Member Functions | |
static void | DeleteAllDescendants (vtkKdNode *kd) |
static int | CountNodes (vtkKdNode *kd) |
static void | SetMinMaxId (vtkKdNode *kd) |
static void | _PrintTree (vtkKdNode *kd, int depth) |
Protected Attributes | |
vtkKdNode * | Top |
int | NumberOfCuts |
int * | Dim |
double * | Coord |
int * | Lower |
int * | Upper |
double * | LowerDataCoord |
double * | UpperDataCoord |
int * | Npoints |
double | Bounds [6] |
typedef vtkObject vtkBSPCuts::Superclass |
vtkBSPCuts::vtkBSPCuts | ( | ) | [protected] |
vtkBSPCuts::~vtkBSPCuts | ( | ) | [protected] |
vtkBSPCuts::vtkBSPCuts | ( | const vtkBSPCuts & | ) | [protected] |
virtual const char* vtkBSPCuts::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkObject.
static int vtkBSPCuts::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
virtual int vtkBSPCuts::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
static vtkBSPCuts* vtkBSPCuts::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkObject.
void vtkBSPCuts::PrintSelf | ( | ostream & | os, | |
vtkIndent | indent | |||
) | [virtual] |
static vtkBSPCuts* vtkBSPCuts::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkObject.
void vtkBSPCuts::CreateCuts | ( | double * | bounds, | |
int | ncuts, | |||
int * | dim, | |||
double * | coord, | |||
int * | lower, | |||
int * | upper, | |||
double * | lowerDataCoord, | |||
double * | upperDataCoord, | |||
int * | npoints | |||
) |
Initialize the cuts with arrays of information. This type of information would be obtained from a graph partitioning software package like Zoltan. bounds - the bounds (xmin, xmax, ymin, ymax, zmin, zmax) of the space being partitioned ncuts - the number cuts, also the size of the following arrays dim - the dimension along which the cut is made (x/y/z - 0/1/2) coord - the location of the cut along the axis lower - array index for the lower region bounded by the cut upper - array index for the upper region bounded by the cut lowerDataCoord - optional upper bound of the data in the lower region upperDataCoord - optional lower bound of the data in the upper region npoints - optional number of points in the spatial region
void vtkBSPCuts::CreateCuts | ( | vtkKdNode * | kd | ) |
Initialize the cuts from a tree of vtkKdNode's
vtkKdNode* vtkBSPCuts::GetKdNodeTree | ( | ) | [inline] |
Return a tree of vtkKdNode's representing the cuts specified in this object. This is our copy, don't delete it.
Definition at line 75 of file vtkBSPCuts.h.
virtual int vtkBSPCuts::GetNumberOfCuts | ( | ) | [virtual] |
Get the number of cuts in the partitioning, which also the size of the arrays in the array representation of the partitioning.
int vtkBSPCuts::GetArrays | ( | int | len, | |
int * | dim, | |||
double * | coord, | |||
int * | lower, | |||
int * | upper, | |||
double * | lowerDataCoord, | |||
double * | upperDataCoord, | |||
int * | npoints | |||
) |
Get the arrays representing the cuts in the partitioning.
int vtkBSPCuts::Equals | ( | vtkBSPCuts * | other, | |
double | tolerance = 0.0 | |||
) |
Compare these cuts with those of the other tree. Returns true if the two trees are the same.
void vtkBSPCuts::PrintTree | ( | ) |
void vtkBSPCuts::PrintArrays | ( | ) |
static void vtkBSPCuts::DeleteAllDescendants | ( | vtkKdNode * | kd | ) | [static, protected] |
static int vtkBSPCuts::CountNodes | ( | vtkKdNode * | kd | ) | [static, protected] |
static void vtkBSPCuts::SetMinMaxId | ( | vtkKdNode * | kd | ) | [static, protected] |
static void vtkBSPCuts::_PrintTree | ( | vtkKdNode * | kd, | |
int | depth | |||
) | [static, protected] |
void vtkBSPCuts::BuildTree | ( | vtkKdNode * | kd, | |
int | idx | |||
) | [protected] |
int vtkBSPCuts::WriteArray | ( | vtkKdNode * | kd, | |
int | loc | |||
) | [protected] |
void vtkBSPCuts::ResetArrays | ( | ) | [protected] |
void vtkBSPCuts::AllocateArrays | ( | int | size | ) | [protected] |
void vtkBSPCuts::operator= | ( | const vtkBSPCuts & | ) | [protected] |
vtkKdNode* vtkBSPCuts::Top [protected] |
Definition at line 111 of file vtkBSPCuts.h.
int vtkBSPCuts::NumberOfCuts [protected] |
Definition at line 115 of file vtkBSPCuts.h.
int* vtkBSPCuts::Dim [protected] |
Definition at line 116 of file vtkBSPCuts.h.
double* vtkBSPCuts::Coord [protected] |
Definition at line 117 of file vtkBSPCuts.h.
int* vtkBSPCuts::Lower [protected] |
Definition at line 118 of file vtkBSPCuts.h.
int* vtkBSPCuts::Upper [protected] |
Definition at line 119 of file vtkBSPCuts.h.
double* vtkBSPCuts::LowerDataCoord [protected] |
Definition at line 123 of file vtkBSPCuts.h.
double* vtkBSPCuts::UpperDataCoord [protected] |
Definition at line 124 of file vtkBSPCuts.h.
int* vtkBSPCuts::Npoints [protected] |
Definition at line 125 of file vtkBSPCuts.h.
double vtkBSPCuts::Bounds[6] [protected] |
Definition at line 127 of file vtkBSPCuts.h.