VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
vtkBSPCuts Class Reference

This class represents an axis-aligned Binary Spatial Partitioning of a 3D space. More...

#include <vtkBSPCuts.h>

Inheritance diagram for vtkBSPCuts:
[legend]
Collaboration diagram for vtkBSPCuts:
[legend]

Public Types

typedef vtkDataObject Superclass
 
- Public Types inherited from vtkDataObject
typedef vtkObject Superclass
 
enum  FieldAssociations {
  FIELD_ASSOCIATION_POINTS, FIELD_ASSOCIATION_CELLS, FIELD_ASSOCIATION_NONE, FIELD_ASSOCIATION_POINTS_THEN_CELLS,
  FIELD_ASSOCIATION_VERTICES, FIELD_ASSOCIATION_EDGES, FIELD_ASSOCIATION_ROWS, NUMBER_OF_ASSOCIATIONS
}
 
enum  AttributeTypes {
  POINT, CELL, FIELD, POINT_THEN_CELL,
  VERTEX, EDGE, ROW, NUMBER_OF_ATTRIBUTE_TYPES
}
 
enum  FieldOperations { FIELD_OPERATION_PRESERVED, FIELD_OPERATION_REINTERPOLATED, FIELD_OPERATION_MODIFIED, FIELD_OPERATION_REMOVED }
 
- Public Types inherited from vtkObject
typedef vtkObjectBase Superclass
 

Public Member Functions

virtual int IsA (const char *type)
 
vtkBSPCuts * NewInstance () const
 
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 ()
 
virtual void Initialize ()
 
virtual void ShallowCopy (vtkDataObject *src)
 
virtual void DeepCopy (vtkDataObject *src)
 
- Public Member Functions inherited from vtkDataObject
vtkDataObject * NewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
unsigned long int GetMTime ()
 
void ReleaseData ()
 
virtual int GetDataObjectType ()
 
unsigned long GetUpdateTime ()
 
virtual unsigned long GetActualMemorySize ()
 
void DataHasBeenGenerated ()
 
virtual void PrepareForNewData ()
 
virtual int GetExtentType ()
 
virtual void Crop (const int *updateExtent)
 
virtual vtkDataSetAttributes * GetAttributes (int type)
 
virtual vtkFieldData * GetAttributesAsFieldData (int type)
 
virtual int GetAttributeTypeForArray (vtkAbstractArray *arr)
 
virtual vtkIdType GetNumberOfElements (int type)
 
virtual vtkInformation * GetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual int GetDataReleased ()
 
virtual void SetFieldData (vtkFieldData *)
 
virtual vtkFieldData * GetFieldData ()
 
virtual void CopyInformationFromPipeline (vtkInformation *vtkNotUsed(info))
 
void GlobalReleaseDataFlagOn ()
 
void GlobalReleaseDataFlagOff ()
 
- Public Member Functions inherited from vtkObject
vtkObject * NewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
unsigned char GetDebug ()
 
void SetDebug (unsigned char debugFlag)
 
virtual void Modified ()
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 
vtkCommand * GetCommand (unsigned long tag)
 
void RemoveObserver (vtkCommand *)
 
void RemoveObservers (unsigned long event, vtkCommand *)
 
void RemoveObservers (const char *event, vtkCommand *)
 
int HasObserver (unsigned long event, vtkCommand *)
 
int HasObserver (const char *event, vtkCommand *)
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
int HasObserver (unsigned long event)
 
int HasObserver (const char *event)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 
int InvokeEvent (unsigned long event, void *callData)
 
int InvokeEvent (const char *event, void *callData)
 
int InvokeEvent (unsigned long event)
 
int InvokeEvent (const char *event)
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 
virtual void Delete ()
 
virtual void FastDelete ()
 
void Print (ostream &os)
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &)
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 
int GetReferenceCount ()
 

Static Public Member Functions

static vtkBSPCuts * New ()
 
static int IsTypeOf (const char *type)
 
static vtkBSPCuts * SafeDownCast (vtkObjectBase *o)
 
static vtkBSPCuts * GetData (vtkInformation *info)
 
static vtkBSPCuts * GetData (vtkInformationVector *v, int i=0)
 
- Static Public Member Functions inherited from vtkDataObject
static vtkDataObject * New ()
 
static int IsTypeOf (const char *type)
 
static vtkDataObject * SafeDownCast (vtkObjectBase *o)
 
static const char * GetAssociationTypeAsString (int associationType)
 
static int GetAssociationTypeFromString (const char *associationType)
 
static vtkInformationStringKey * DATA_TYPE_NAME ()
 
static vtkInformationDataObjectKey * DATA_OBJECT ()
 
static vtkInformationIntegerKey * DATA_EXTENT_TYPE ()
 
static vtkInformationIntegerPointerKey * DATA_EXTENT ()
 
static vtkInformationIntegerVectorKey * ALL_PIECES_EXTENT ()
 
static vtkInformationIntegerKey * DATA_PIECE_NUMBER ()
 
static vtkInformationIntegerKey * DATA_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKey * DATA_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationDoubleKey * DATA_TIME_STEP ()
 
static vtkInformationInformationVectorKey * POINT_DATA_VECTOR ()
 
static vtkInformationInformationVectorKey * CELL_DATA_VECTOR ()
 
static vtkInformationInformationVectorKey * VERTEX_DATA_VECTOR ()
 
static vtkInformationInformationVectorKey * EDGE_DATA_VECTOR ()
 
static vtkInformationIntegerKey * FIELD_ARRAY_TYPE ()
 
static vtkInformationIntegerKey * FIELD_ASSOCIATION ()
 
static vtkInformationIntegerKey * FIELD_ATTRIBUTE_TYPE ()
 
static vtkInformationIntegerKey * FIELD_ACTIVE_ATTRIBUTE ()
 
static vtkInformationIntegerKey * FIELD_NUMBER_OF_COMPONENTS ()
 
static vtkInformationIntegerKey * FIELD_NUMBER_OF_TUPLES ()
 
static vtkInformationIntegerKey * FIELD_OPERATION ()
 
static vtkInformationDoubleVectorKey * FIELD_RANGE ()
 
static vtkInformationIntegerVectorKey * PIECE_EXTENT ()
 
static vtkInformationStringKey * FIELD_NAME ()
 
static vtkInformationDoubleVectorKey * ORIGIN ()
 
static vtkInformationDoubleVectorKey * SPACING ()
 
static vtkInformationDoubleVectorKey * BOUNDING_BOX ()
 
static vtkInformationDataObjectKey * SIL ()
 
static vtkInformation * GetActiveFieldInformation (vtkInformation *info, int fieldAssociation, int attributeType)
 
static vtkInformation * GetNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static void RemoveNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static vtkInformation * SetActiveAttribute (vtkInformation *info, int fieldAssociation, const char *attributeName, int attributeType)
 
static void SetActiveAttributeInfo (vtkInformation *info, int fieldAssociation, int attributeType, const char *name, int arrayType, int numComponents, int numTuples)
 
static void SetPointDataActiveScalarInfo (vtkInformation *info, int arrayType, int numComponents)
 
static vtkDataObject * GetData (vtkInformation *info)
 
static vtkDataObject * GetData (vtkInformationVector *v, int i=0)
 
static void SetGlobalReleaseDataFlag (int val)
 
static int GetGlobalReleaseDataFlag ()
 
- Static Public Member Functions inherited from vtkObject
static int IsTypeOf (const char *type)
 
static vtkObject * SafeDownCast (vtkObjectBase *o)
 
static vtkObject * New ()
 
static void BreakOnError ()
 
static void SetGlobalWarningDisplay (int val)
 
static void GlobalWarningDisplayOn ()
 
static void GlobalWarningDisplayOff ()
 
static int GetGlobalWarningDisplay ()
 
- Static Public Member Functions inherited from vtkObjectBase
static int IsTypeOf (const char *name)
 
static vtkObjectBase * New ()
 

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 
 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 &)
 
- Protected Member Functions inherited from vtkDataObject
 vtkDataObject ()
 
 ~vtkDataObject ()
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
virtual ~vtkObject ()
 
virtual void RegisterInternal (vtkObjectBase *, int check)
 
virtual void UnRegisterInternal (vtkObjectBase *, int check)
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL)
 
void InternalReleaseFocus ()
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void CollectRevisions (ostream &)
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

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]
 
- Protected Attributes inherited from vtkDataObject
vtkFieldData * FieldData
 
int DataReleased
 
vtkTimeStamp UpdateTime
 
vtkInformation * Information
 
- Protected Attributes inherited from vtkObject
unsigned char Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt< vtkTypeInt32 > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

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 43 of file vtkBSPCuts.h.

Member Typedef Documentation

Definition at line 47 of file vtkBSPCuts.h.

Constructor & Destructor Documentation

vtkBSPCuts::vtkBSPCuts ( )
protected
vtkBSPCuts::~vtkBSPCuts ( )
protected
vtkBSPCuts::vtkBSPCuts ( const vtkBSPCuts &  )
protected

Member Function Documentation

static vtkBSPCuts* vtkBSPCuts::New ( )
static
static int vtkBSPCuts::IsTypeOf ( const char *  type)
static
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 vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkDataObject.

static vtkBSPCuts* vtkBSPCuts::SafeDownCast ( vtkObjectBase *  o)
static
virtual vtkObjectBase* vtkBSPCuts::NewInstanceInternal ( ) const
protectedvirtual

Reimplemented from vtkDataObject.

vtkBSPCuts* vtkBSPCuts::NewInstance ( ) const
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.

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 vtkBSPCuts* vtkBSPCuts::GetData ( vtkInformation *  info)
static

Retrieve an instance of this class from an information object.

static vtkBSPCuts* vtkBSPCuts::GetData ( vtkInformationVector *  v,
int  i = 0 
)
static

Retrieve an instance of this class from an information object.

virtual void vtkBSPCuts::Initialize ( )
virtual

Restore data object to initial state,

Reimplemented from vtkDataObject.

virtual void vtkBSPCuts::ShallowCopy ( vtkDataObject *  src)
virtual

Shallow copy. These copy the data, but not any of the pipeline connections.

Reimplemented from vtkDataObject.

virtual void vtkBSPCuts::DeepCopy ( vtkDataObject *  src)
virtual

Shallow copy. These copy the data, but not any of the pipeline connections.

Reimplemented from vtkDataObject.

static void vtkBSPCuts::DeleteAllDescendants ( vtkKdNode *  kd)
staticprotected
static int vtkBSPCuts::CountNodes ( vtkKdNode *  kd)
staticprotected
static void vtkBSPCuts::SetMinMaxId ( vtkKdNode *  kd)
staticprotected
static void vtkBSPCuts::_PrintTree ( vtkKdNode *  kd,
int  depth 
)
staticprotected
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

vtkKdNode* vtkBSPCuts::Top
protected

Definition at line 129 of file vtkBSPCuts.h.

int vtkBSPCuts::NumberOfCuts
protected

Definition at line 133 of file vtkBSPCuts.h.

int* vtkBSPCuts::Dim
protected

Definition at line 134 of file vtkBSPCuts.h.

double* vtkBSPCuts::Coord
protected

Definition at line 135 of file vtkBSPCuts.h.

int* vtkBSPCuts::Lower
protected

Definition at line 136 of file vtkBSPCuts.h.

int* vtkBSPCuts::Upper
protected

Definition at line 137 of file vtkBSPCuts.h.

double* vtkBSPCuts::LowerDataCoord
protected

Definition at line 141 of file vtkBSPCuts.h.

double* vtkBSPCuts::UpperDataCoord
protected

Definition at line 142 of file vtkBSPCuts.h.

int* vtkBSPCuts::Npoints
protected

Definition at line 143 of file vtkBSPCuts.h.

double vtkBSPCuts::Bounds[6]
protected

Definition at line 145 of file vtkBSPCuts.h.


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