VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkHyperTreeGridToUnstructuredGrid.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00037 #ifndef __vtkHyperTreeGridToUnstructuredGrid_h 00038 #define __vtkHyperTreeGridToUnstructuredGrid_h 00039 00040 #include "vtkFiltersHyperTreeModule.h" // For export macro 00041 #include "vtkUnstructuredGridAlgorithm.h" 00042 00043 class vtkCellArray; 00044 class vtkDataSetAttributes; 00045 class vtkHyperTreeGrid; 00046 class vtkPoints; 00047 00048 class VTKFILTERSHYPERTREE_EXPORT vtkHyperTreeGridToUnstructuredGrid : public vtkUnstructuredGridAlgorithm 00049 { 00050 public: 00051 static vtkHyperTreeGridToUnstructuredGrid* New(); 00052 vtkTypeMacro( vtkHyperTreeGridToUnstructuredGrid, vtkUnstructuredGridAlgorithm ); 00053 void PrintSelf( ostream&, vtkIndent ); 00054 00055 protected: 00056 vtkHyperTreeGridToUnstructuredGrid(); 00057 ~vtkHyperTreeGridToUnstructuredGrid(); 00058 00059 unsigned int Dimension; 00060 unsigned int CellSize; 00061 unsigned int* Coefficients; 00062 00063 virtual int RequestData( vtkInformation*, vtkInformationVector**, vtkInformationVector* ); 00064 virtual int FillInputPortInformation( int, vtkInformation* ); 00065 00066 void ProcessTrees(); 00067 void RecursiveProcessTree( void* ); 00068 void AddCell( vtkIdType inId, double* origin, double* size ); 00069 00070 vtkHyperTreeGrid* Input; 00071 vtkUnstructuredGrid* Output; 00072 00073 vtkDataSetAttributes* InData; 00074 vtkDataSetAttributes* OutData; 00075 00076 vtkPoints* Points; 00077 vtkCellArray* Cells; 00078 00079 private: 00080 vtkHyperTreeGridToUnstructuredGrid(const vtkHyperTreeGridToUnstructuredGrid&); // Not implemented. 00081 void operator=(const vtkHyperTreeGridToUnstructuredGrid&); // Not implemented. 00082 }; 00083 00084 #endif