VMTK
vtkvmtkPolyDataCenterlineSections.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: VMTK
4 Module: $RCSfile: vtkvmtkPolyDataCenterlineSections.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 =========================================================================*/
33 #ifndef __vtkvmtkPolyDataCenterlineSections_h
34 #define __vtkvmtkPolyDataCenterlineSections_h
35 
36 #include "vtkPolyDataAlgorithm.h"
37 //#include "vtkvmtkComputationalGeometryWin32Header.h"
38 #include "vtkvmtkWin32Header.h"
39 #include "vtkPolyData.h"
40 
41 class VTK_VMTK_COMPUTATIONAL_GEOMETRY_EXPORT vtkvmtkPolyDataCenterlineSections : public vtkPolyDataAlgorithm
42 {
43  public:
44  vtkTypeMacro(vtkvmtkPolyDataCenterlineSections,vtkPolyDataAlgorithm);
45  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
46 
48 
49  vtkSetObjectMacro(Centerlines,vtkPolyData);
50  vtkGetObjectMacro(Centerlines,vtkPolyData);
51 
52  vtkSetStringMacro(CenterlineSectionAreaArrayName);
53  vtkGetStringMacro(CenterlineSectionAreaArrayName);
54 
55  vtkSetStringMacro(CenterlineSectionMinSizeArrayName);
56  vtkGetStringMacro(CenterlineSectionMinSizeArrayName);
57 
58  vtkSetStringMacro(CenterlineSectionMaxSizeArrayName);
59  vtkGetStringMacro(CenterlineSectionMaxSizeArrayName);
60 
61  vtkSetStringMacro(CenterlineSectionShapeArrayName);
62  vtkGetStringMacro(CenterlineSectionShapeArrayName);
63 
64  vtkSetStringMacro(CenterlineSectionClosedArrayName);
65  vtkGetStringMacro(CenterlineSectionClosedArrayName);
66 
67  protected:
70 
71  virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) VTK_OVERRIDE;
72 
73  void ComputeCenterlineSections(vtkPolyData* input, int cellId, vtkPolyData* output);
74 
75  vtkPolyData* Centerlines;
76 
82 
83  private:
85  void operator=(const vtkvmtkPolyDataCenterlineSections&); // Not implemented.
86 };
87 
88 #endif
Extract a set of vessel sections from a surface along a centerline.