VMTK
vtkvmtkUnstructuredGridTetraFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: VMTK
4 Module: $RCSfile: vtkvmtkUnstructuredGridTetraFilter.h,v $
5 Language: C++
6 
7  Copyright (c) Luca Antiga, David Steinman. All rights reserved.
8  See LICENSE file for details.
9 
10  Portions of this code are covered under the VTK copyright.
11  See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm
12  for details.
13 
14  This software is distributed WITHOUT ANY WARRANTY; without even
15  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
16  PURPOSE. See the above copyright notices for more information.
17 
18 =========================================================================*/
26 #ifndef __vtkvmtkUnstructuredGridTetraFilter_h
27 #define __vtkvmtkUnstructuredGridTetraFilter_h
28 
29 #include "vtkUnstructuredGridAlgorithm.h"
30 #include "vtkvmtkWin32Header.h"
31 
32 class vtkOrderedTriangulator;
33 class vtkIdList;
34 
35 class VTK_VMTK_MISC_EXPORT vtkvmtkUnstructuredGridTetraFilter : public vtkUnstructuredGridAlgorithm
36 {
37 public:
39  vtkTypeMacro(vtkvmtkUnstructuredGridTetraFilter,vtkUnstructuredGridAlgorithm);
40  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
41 
42  vtkSetMacro(TetrahedraOnly, int);
43  vtkGetMacro(TetrahedraOnly, int);
44  vtkBooleanMacro(TetrahedraOnly, int);
45 
46 protected:
49 
50  virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
51 
52  int TriangulateQuad(vtkUnstructuredGrid* output, vtkIdList *quadPtIds, vtkIdList *ptIds);
53 
54  vtkOrderedTriangulator *Triangulator;
55 
56  void Execute(vtkUnstructuredGrid *, vtkUnstructuredGrid *);
57 
59 
60 private:
62  void operator=(const vtkvmtkUnstructuredGridTetraFilter&); // Not implemented.
63 };
64 
65 #endif
66 
Convert the elements of a mesh to linear tetrahedra.