This class represents an axis-aligned Binary Spatial Partitioning of a 3D space.
More...
#include <vtkBSPCuts.h>
List of all members.
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] |
Detailed Description
This class represents an axis-aligned Binary Spatial Partitioning of a 3D space.
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.
- See also:
- vtkKdTree vtkKdNode vtkDistributedDataFilter
Definition at line 42 of file vtkBSPCuts.h.
Member Typedef Documentation
Constructor & Destructor Documentation
vtkBSPCuts::vtkBSPCuts |
( |
|
) |
[protected] |
vtkBSPCuts::~vtkBSPCuts |
( |
|
) |
[protected] |
vtkBSPCuts::vtkBSPCuts |
( |
const vtkBSPCuts & |
|
) |
[protected] |
Member Function Documentation
virtual const char* vtkBSPCuts::GetClassName |
( |
|
) |
[virtual] |
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.
void vtkBSPCuts::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent | |
|
) |
| | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
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] |
Member Data Documentation
The documentation for this class was generated from the following file: