1 /*=========================================================================
3 Program: Visualization Toolkit
4 Module: $RCSfile: vtkExtractPolyDataPiece.h,v $
6 Date: $Date: 2002/08/30 21:05:53 $
7 Version: $Revision: 1.8 $
9 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
11 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
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.
17 =========================================================================*/
18 // .NAME vtkExtractPolyDataPiece - Return specified piece, including specified
19 // number of ghost levels.
21 #ifndef __vtkExtractPolyDataPiece_h
22 #define __vtkExtractPolyDataPiece_h
24 #include "vtkPolyDataToPolyDataFilter.h"
29 class VTK_PARALLEL_EXPORT vtkExtractPolyDataPiece : public vtkPolyDataToPolyDataFilter
32 static vtkExtractPolyDataPiece *New();
33 vtkTypeRevisionMacro(vtkExtractPolyDataPiece, vtkPolyDataToPolyDataFilter);
34 void PrintSelf(ostream& os, vtkIndent indent);
37 // Turn on/off creating ghost cells (on by default).
38 vtkSetMacro(CreateGhostCells, int);
39 vtkGetMacro(CreateGhostCells, int);
40 vtkBooleanMacro(CreateGhostCells, int);
43 vtkExtractPolyDataPiece();
44 ~vtkExtractPolyDataPiece() {};
46 // Usual data generation method
48 void ExecuteInformation();
49 void ComputeInputUpdateExtents(vtkDataObject *out);
51 // A method for labeling which piece the cells belong to.
52 void ComputeCellTags(vtkIntArray *cellTags, vtkIdList *pointOwnership,
53 int piece, int numPieces);
55 void AddGhostLevel(vtkPolyData *input, vtkIntArray *cellTags, int ghostLevel);
59 vtkExtractPolyDataPiece(const vtkExtractPolyDataPiece&); // Not implemented.
60 void operator=(const vtkExtractPolyDataPiece&); // Not implemented.