VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkContourHelper.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 =========================================================================*/ 00024 #ifndef __vtkContourHelper_h 00025 #define __vtkContourHelper_h 00026 00027 #include "vtkSmartPointer.h" //for a member variable 00028 #include "vtkPolygonBuilder.h" //for a member variable 00029 00030 class vtkIncrementalPointLocator; 00031 class vtkCellArray; 00032 class vtkPointData; 00033 class vtkCellData; 00034 class vtkCell; 00035 class vtkDataArray; 00036 class vtkIdList; 00037 00038 class vtkContourHelper 00039 { 00040 public: 00041 vtkContourHelper(vtkIncrementalPointLocator *locator, 00042 vtkCellArray *verts, 00043 vtkCellArray *lines, 00044 vtkCellArray* polys, 00045 vtkPointData *inPd, 00046 vtkCellData *inCd, 00047 vtkPointData* outPd, 00048 vtkCellData *outCd, 00049 int estimatedSize, 00050 bool outputTriangles); 00051 ~vtkContourHelper(); 00052 void Contour(vtkCell* cell, double value, vtkDataArray *cellScalars, vtkIdType cellId); 00053 00054 private: 00055 vtkIncrementalPointLocator* Locator; 00056 vtkCellArray* Verts; 00057 vtkCellArray* Lines; 00058 vtkCellArray* Polys; 00059 vtkPointData* InPd; 00060 vtkCellData* InCd; 00061 vtkPointData* OutPd; 00062 vtkCellData* OutCd; 00063 vtkSmartPointer<vtkCellData> TriOutCd; 00064 00065 vtkCellArray* Tris; 00066 vtkPolygonBuilder PolyBuilder; 00067 vtkIdList* Poly; 00068 bool GenerateTriangles; 00069 }; 00070 00071 #endif 00072 // VTK-HeaderTest-Exclude: vtkContourHelper.h