OSDN Git Service

FIRST REPOSITORY
[eos/hostdependOTHERS.git] / I386LINUX / util / I386LINUX / include / vtk / vtkExtractPolyDataPiece.h
1 /*=========================================================================
2
3   Program:   Visualization Toolkit
4   Module:    $RCSfile: vtkExtractPolyDataPiece.h,v $
5   Language:  C++
6   Date:      $Date: 2002/08/30 21:05:53 $
7   Version:   $Revision: 1.8 $
8
9   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 
10   All rights reserved.
11   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
12
13      This software is distributed WITHOUT ANY WARRANTY; without even 
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15      PURPOSE.  See the above copyright notice for more information.
16
17 =========================================================================*/
18 // .NAME vtkExtractPolyDataPiece - Return specified piece, including specified
19 // number of ghost levels.
20
21 #ifndef __vtkExtractPolyDataPiece_h
22 #define __vtkExtractPolyDataPiece_h
23
24 #include "vtkPolyDataToPolyDataFilter.h"
25
26 class vtkIdList;
27 class vtkIntArray;
28
29 class VTK_PARALLEL_EXPORT vtkExtractPolyDataPiece : public vtkPolyDataToPolyDataFilter
30 {
31 public:
32   static vtkExtractPolyDataPiece *New();
33   vtkTypeRevisionMacro(vtkExtractPolyDataPiece, vtkPolyDataToPolyDataFilter);
34   void PrintSelf(ostream& os, vtkIndent indent);
35   
36   // Description:
37   // Turn on/off creating ghost cells (on by default).
38   vtkSetMacro(CreateGhostCells, int);
39   vtkGetMacro(CreateGhostCells, int);
40   vtkBooleanMacro(CreateGhostCells, int);
41   
42 protected:
43   vtkExtractPolyDataPiece();
44   ~vtkExtractPolyDataPiece() {};
45
46   // Usual data generation method
47   void Execute();
48   void ExecuteInformation();
49   void ComputeInputUpdateExtents(vtkDataObject *out);
50  
51   // A method for labeling which piece the cells belong to.
52   void ComputeCellTags(vtkIntArray *cellTags, vtkIdList *pointOwnership,
53                        int piece, int numPieces);
54   
55   void AddGhostLevel(vtkPolyData *input, vtkIntArray *cellTags, int ghostLevel);
56   
57   int CreateGhostCells;
58 private:
59   vtkExtractPolyDataPiece(const vtkExtractPolyDataPiece&);  // Not implemented.
60   void operator=(const vtkExtractPolyDataPiece&);  // Not implemented.
61 };
62
63 #endif