00001 /*========================================================================= 00002 00003 Program: Medical Imaging & Interaction Toolkit 00004 Language: C++ 00005 Date: $Date$ 00006 Version: $Revision$ 00007 00008 Copyright (c) German Cancer Research Center, Division of Medical and 00009 Biological Informatics. All rights reserved. 00010 See MITKCopyright.txt or https://www.mitk.org/copyright.html for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 00018 00019 #ifndef MITK_CONTOUR_SET_VTK_MAPPER_3D_H 00020 #define MITK_CONTOUR_SET_VTK_MAPPER_3D_H 00021 00022 #include "mitkCommon.h" 00023 #include "MitkExtExports.h" 00024 #include "mitkVtkMapper3D.h" 00025 #include "mitkContourSet.h" 00026 #include "mitkBaseRenderer.h" 00027 00028 #include <vtkPolyData.h> 00029 00030 class vtkPolyDataMapper; 00031 class vtkAppendPolyData; 00032 class vtkActor; 00033 class vtkTubeFilter; 00034 00035 namespace mitk { 00036 00037 //##Documentation 00038 //## @brief Vtk-based mapper for mitk::Contour 00039 //## @ingroup Mapper 00040 class MitkExt_EXPORT ContourSetVtkMapper3D : public VtkMapper3D 00041 { 00042 public: 00043 00044 mitkClassMacro(ContourSetVtkMapper3D, VtkMapper3D); 00045 00046 itkNewMacro(Self); 00047 00048 virtual const mitk::ContourSet* GetInput(); 00049 00050 virtual vtkProp* GetVtkProp(mitk::BaseRenderer* renderer); 00051 00052 protected: 00053 00054 ContourSetVtkMapper3D(); 00055 00056 virtual ~ContourSetVtkMapper3D(); 00057 00058 virtual void GenerateData(mitk::BaseRenderer* renderer); 00059 00060 vtkPolyDataMapper* m_VtkPolyDataMapper; 00061 vtkTubeFilter* m_TubeFilter; 00062 00063 vtkPolyData *m_ContourSet; 00064 vtkActor *m_Actor; 00065 00066 }; 00067 00068 } // namespace mitk 00069 00070 #endif // MITK_CONTOUR_VTK_MAPPER_3D_H