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 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)
 
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
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual vtkAlgorithmOutputGetProducerPort ()
 
unsigned long int GetMTime ()
 
void ReleaseData ()
 
int ShouldIReleaseData ()
 
virtual void Register (vtkObjectBase *o)
 
virtual void UnRegister (vtkObjectBase *o)
 
virtual void Update ()
 
virtual void UpdateInformation ()
 
virtual void PropagateUpdateExtent ()
 
virtual void TriggerAsynchronousUpdate ()
 
virtual void UpdateData ()
 
virtual unsigned long GetEstimatedMemorySize ()
 
virtual int GetDataObjectType ()
 
unsigned long GetUpdateTime ()
 
void SetUpdateExtentToWholeExtent ()
 
unsigned long GetPipelineMTime ()
 
virtual unsigned long GetActualMemorySize ()
 
void CopyInformation (vtkDataObject *data)
 
virtual void CopyInformationFromPipeline (vtkInformation *request)
 
void DataHasBeenGenerated ()
 
virtual void PrepareForNewData ()
 
virtual int GetExtentType ()
 
virtual void Crop ()
 
virtual vtkDataSetAttributesGetAttributes (int type)
 
virtual vtkFieldDataGetAttributesAsFieldData (int type)
 
virtual int GetAttributeTypeForArray (vtkAbstractArray *arr)
 
virtual vtkIdType GetNumberOfElements (int type)
 
virtual vtkSourceGetSource ()
 
void SetSource (vtkSource *s)
 
virtual vtkInformationGetInformation ()
 
virtual void SetInformation (vtkInformation *)
 
virtual vtkInformationGetPipelineInformation ()
 
virtual void SetPipelineInformation (vtkInformation *)
 
virtual int GetDataReleased ()
 
void SetReleaseDataFlag (int)
 
int GetReleaseDataFlag ()
 
virtual void ReleaseDataFlagOn ()
 
virtual void ReleaseDataFlagOff ()
 
virtual void SetFieldData (vtkFieldData *)
 
virtual vtkFieldDataGetFieldData ()
 
virtual void SetUpdateExtent (int piece, int numPieces, int ghostLevel)
 
void SetUpdateExtent (int piece, int numPieces)
 
virtual void SetUpdateExtent (int x0, int x1, int y0, int y1, int z0, int z1)
 
virtual void SetUpdateExtent (int extent[6])
 
virtual int * GetUpdateExtent ()
 
virtual void GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
virtual void GetUpdateExtent (int extent[6])
 
virtual void CopyTypeSpecificInformation (vtkDataObject *data)
 
void SetUpdatePiece (int piece)
 
void SetUpdateNumberOfPieces (int num)
 
virtual int GetUpdatePiece ()
 
virtual int GetUpdateNumberOfPieces ()
 
void SetUpdateGhostLevel (int level)
 
virtual int GetUpdateGhostLevel ()
 
virtual void SetRequestExactExtent (int flag)
 
virtual int GetRequestExactExtent ()
 
virtual void RequestExactExtentOn ()
 
virtual void RequestExactExtentOff ()
 
virtual void SetWholeExtent (int x0, int x1, int y0, int y1, int z0, int z1)
 
virtual void SetWholeExtent (int extent[6])
 
virtual int * GetWholeExtent ()
 
virtual void GetWholeExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
 
virtual void GetWholeExtent (int extent[6])
 
virtual void SetWholeBoundingBox (double x0, double x1, double y0, double y1, double z0, double z1)
 
virtual void SetWholeBoundingBox (double bb[6])
 
virtual double * GetWholeBoundingBox ()
 
virtual void GetWholeBoundingBox (double &x0, double &x1, double &y0, double &y1, double &z0, double &z1)
 
virtual void GetWholeBoundingBox (double extent[6])
 
virtual void SetMaximumNumberOfPieces (int)
 
virtual int GetMaximumNumberOfPieces ()
 
virtual void CopyInformationToPipeline (vtkInformation *request, vtkInformation *input, vtkInformation *output, int forceCopy)
 
void CopyInformationToPipeline (vtkInformation *request, vtkInformation *input)
 
void SetExtentTranslator (vtkExtentTranslator *translator)
 
vtkExtentTranslatorGetExtentTranslator ()
 
void GlobalReleaseDataFlagOn ()
 
void GlobalReleaseDataFlagOff ()
 
- Public Member Functions inherited from vtkObject
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)
 
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)
 
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)
 
void SetReferenceCount (int)
 
void PrintRevisions (ostream &os)
 
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 (vtkObject *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 (vtkObject *o)
 
static const char * GetAssociationTypeAsString (int associationType)
 
static vtkInformationStringKeyDATA_TYPE_NAME ()
 
static vtkInformationDataObjectKeyDATA_OBJECT ()
 
static vtkInformationIntegerKeyDATA_EXTENT_TYPE ()
 
static vtkInformationIntegerPointerKeyDATA_EXTENT ()
 
static vtkInformationIntegerKeyDATA_PIECE_NUMBER ()
 
static vtkInformationIntegerKeyDATA_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKeyDATA_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationDoubleKeyDATA_RESOLUTION ()
 
static vtkInformationDoubleVectorKeyDATA_TIME_STEPS ()
 
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 vtkInformationDoubleVectorKeyPIECE_FIELD_RANGE ()
 
static vtkInformationStringKeyFIELD_ARRAY_NAME ()
 
static vtkInformationIntegerVectorKeyPIECE_EXTENT ()
 
static vtkInformationStringKeyFIELD_NAME ()
 
static vtkInformationDoubleVectorKeyORIGIN ()
 
static vtkInformationDoubleVectorKeySPACING ()
 
static vtkInformationIntegerKeyDATA_GEOMETRY_UNMODIFIED ()
 
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 (vtkObject *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

 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 ()
 
vtkExecutiveGetExecutive ()
 
int GetPortNumber ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
vtkStreamingDemandDrivenPipelineTrySDDP (const char *method)
 
- 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 &os)
 
 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
 
int * Dim
 
double * Coord
 
int * Lower
 
int * Upper
 
double * LowerDataCoord
 
double * UpperDataCoord
 
int * Npoints
 
double Bounds [6]
 
- Protected Attributes inherited from vtkDataObject
vtkFieldDataFieldData
 
vtkSourceSource
 
int DataReleased
 
vtkTimeStamp UpdateTime
 
vtkInformationInformation
 
vtkInformationPipelineInformation
 
- Protected Attributes inherited from vtkObject
unsigned char Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
- Protected Attributes inherited from vtkObjectBase
int ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Additional Inherited Members

- Protected Types inherited from vtkDataObject
typedef vtkStreamingDemandDrivenPipeline SDDP
 
- Static Protected Attributes inherited from vtkDataObject
static const char AssociationNames [NUMBER_OF_ASSOCIATIONS][55]
 

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

Definition at line 46 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
virtual const char* vtkBSPCuts::GetClassName ( )
virtual

Reimplemented from vtkDataObject.

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 ( vtkObject o)
static
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 74 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 128 of file vtkBSPCuts.h.

int vtkBSPCuts::NumberOfCuts
protected

Definition at line 132 of file vtkBSPCuts.h.

int* vtkBSPCuts::Dim
protected

Definition at line 133 of file vtkBSPCuts.h.

double* vtkBSPCuts::Coord
protected

Definition at line 134 of file vtkBSPCuts.h.

int* vtkBSPCuts::Lower
protected

Definition at line 135 of file vtkBSPCuts.h.

int* vtkBSPCuts::Upper
protected

Definition at line 136 of file vtkBSPCuts.h.

double* vtkBSPCuts::LowerDataCoord
protected

Definition at line 140 of file vtkBSPCuts.h.

double* vtkBSPCuts::UpperDataCoord
protected

Definition at line 141 of file vtkBSPCuts.h.

int* vtkBSPCuts::Npoints
protected

Definition at line 142 of file vtkBSPCuts.h.

double vtkBSPCuts::Bounds[6]
protected

Definition at line 144 of file vtkBSPCuts.h.


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