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)
 
vtkBSPCutsNewInstance () 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)
 
vtkKdNodeGetKdNodeTree ()
 
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
vtkDataObjectNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent)
 
unsigned long int GetMTime ()
 
void ReleaseData ()
 
virtual int GetDataObjectType ()
 
unsigned long GetUpdateTime ()
 
virtual unsigned long GetActualMemorySize ()
 
virtual void CopyInformationToPipeline (vtkInformation *vtkNotUsed(info))
 
void DataHasBeenGenerated ()
 
virtual void PrepareForNewData ()
 
virtual int GetExtentType ()
 
virtual void Crop (const int *updateExtent)
 
virtual vtkDataSetAttributesGetAttributes (int type)
 
virtual vtkFieldDataGetAttributesAsFieldData (int type)
 
virtual int GetAttributeTypeForArray (vtkAbstractArray *arr)
 
virtual vtkIdType GetNumberOfElements (int type)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual int GetDataReleased ()
 
virtual void SetFieldData (vtkFieldData *)
 
virtual vtkFieldDataGetFieldData ()
 
virtual void CopyInformationFromPipeline (vtkInformation *vtkNotUsed(info))
 
void GlobalReleaseDataFlagOn ()
 
void GlobalReleaseDataFlagOff ()
 
- Public Member Functions inherited from vtkObject
vtkObjectNewInstance () const
 
virtual void DebugOn ()
 
virtual void DebugOff ()
 
bool GetDebug ()
 
void SetDebug (bool 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)
 
vtkCommandGetCommand (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 vtkBSPCutsNew ()
 
static int IsTypeOf (const char *type)
 
static vtkBSPCutsSafeDownCast (vtkObjectBase *o)
 
static vtkBSPCutsGetData (vtkInformation *info)
 
static vtkBSPCutsGetData (vtkInformationVector *v, int i=0)
 
- Static Public Member Functions inherited from vtkDataObject
static vtkDataObjectNew ()
 
static int IsTypeOf (const char *type)
 
static vtkDataObjectSafeDownCast (vtkObjectBase *o)
 
static const char * GetAssociationTypeAsString (int associationType)
 
static int GetAssociationTypeFromString (const char *associationType)
 
static vtkInformationStringKeyDATA_TYPE_NAME ()
 
static vtkInformationDataObjectKeyDATA_OBJECT ()
 
static vtkInformationIntegerKeyDATA_EXTENT_TYPE ()
 
static vtkInformationIntegerPointerKeyDATA_EXTENT ()
 
static vtkInformationIntegerVectorKeyALL_PIECES_EXTENT ()
 
static vtkInformationIntegerKeyDATA_PIECE_NUMBER ()
 
static vtkInformationIntegerKeyDATA_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKeyDATA_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationDoubleKeyDATA_TIME_STEP ()
 
static vtkInformationInformationVectorKeyPOINT_DATA_VECTOR ()
 
static vtkInformationInformationVectorKeyCELL_DATA_VECTOR ()
 
static vtkInformationInformationVectorKeyVERTEX_DATA_VECTOR ()
 
static vtkInformationInformationVectorKeyEDGE_DATA_VECTOR ()
 
static vtkInformationIntegerKeyFIELD_ARRAY_TYPE ()
 
static vtkInformationIntegerKeyFIELD_ASSOCIATION ()
 
static vtkInformationIntegerKeyFIELD_ATTRIBUTE_TYPE ()
 
static vtkInformationIntegerKeyFIELD_ACTIVE_ATTRIBUTE ()
 
static vtkInformationIntegerKeyFIELD_NUMBER_OF_COMPONENTS ()
 
static vtkInformationIntegerKeyFIELD_NUMBER_OF_TUPLES ()
 
static vtkInformationIntegerKeyFIELD_OPERATION ()
 
static vtkInformationDoubleVectorKeyFIELD_RANGE ()
 
static vtkInformationIntegerVectorKeyPIECE_EXTENT ()
 
static vtkInformationStringKeyFIELD_NAME ()
 
static vtkInformationDoubleVectorKeyORIGIN ()
 
static vtkInformationDoubleVectorKeySPACING ()
 
static vtkInformationDoubleVectorKeyBOUNDING_BOX ()
 
static vtkInformationDataObjectKeySIL ()
 
static vtkInformationGetActiveFieldInformation (vtkInformation *info, int fieldAssociation, int attributeType)
 
static vtkInformationGetNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static void RemoveNamedFieldInformation (vtkInformation *info, int fieldAssociation, const char *name)
 
static vtkInformationSetActiveAttribute (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 vtkDataObjectGetData (vtkInformation *info)
 
static vtkDataObjectGetData (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 vtkObjectSafeDownCast (vtkObjectBase *o)
 
static vtkObjectNew ()
 
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 vtkObjectBaseNew ()
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () 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

vtkKdNodeTop
 
int NumberOfCuts
 
intDim
 
doubleCoord
 
intLower
 
intUpper
 
doubleLowerDataCoord
 
doubleUpperDataCoord
 
intNpoints
 
double Bounds [6]
 
- Protected Attributes inherited from vtkDataObject
vtkFieldDataFieldData
 
int DataReleased
 
vtkTimeStamp UpdateTime
 
vtkInformationInformation
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
vtkAtomicInt32 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: