Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
Filtering/vtkSimpleScalarTree.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00048 #ifndef __vtkSimpleScalarTree_h
00049 #define __vtkSimpleScalarTree_h
00050
00051 #include "vtkScalarTree.h"
00052
00053
00054 class vtkFloatArray;
00055 class vtkScalarNode;
00056
00057
00058 class VTK_FILTERING_EXPORT vtkSimpleScalarTree : public vtkScalarTree
00059 {
00060 public:
00063 static vtkSimpleScalarTree *New();
00064
00066
00067 vtkTypeRevisionMacro(vtkSimpleScalarTree,vtkScalarTree);
00068 void PrintSelf(ostream& os, vtkIndent indent);
00070
00072
00076 vtkSetClampMacro(BranchingFactor,int,2,VTK_LARGE_INTEGER);
00077 vtkGetMacro(BranchingFactor,int);
00079
00081
00083 vtkGetMacro(Level,int);
00085
00087
00088 vtkSetClampMacro(MaxLevel,int,1,VTK_LARGE_INTEGER);
00089 vtkGetMacro(MaxLevel,int);
00091
00095 virtual void BuildTree();
00096
00098 virtual void Initialize();
00099
00102 virtual void InitTraversal(float scalarValue);
00103
00105
00109 virtual vtkCell *GetNextCell(vtkIdType &cellId, vtkIdList* &ptIds,
00110 vtkDataArray *cellScalars);
00112
00113 protected:
00114 vtkSimpleScalarTree();
00115 ~vtkSimpleScalarTree();
00116
00117 vtkDataArray *Scalars;
00118 int MaxLevel;
00119 int Level;
00120 int BranchingFactor;
00121 vtkScalarNode *Tree;
00122 int TreeSize;
00123
00124 private:
00125 vtkIdType TreeIndex;
00126 vtkIdType LeafOffset;
00127 int ChildNumber;
00128 vtkIdType CellId;
00129 int FindStartLeaf(vtkIdType index, int level);
00130 int FindNextLeaf(vtkIdType index,int level);
00131
00132 private:
00133 vtkSimpleScalarTree(const vtkSimpleScalarTree&);
00134 void operator=(const vtkSimpleScalarTree&);
00135 };
00136
00137 #endif
00138
00139