Medical Imaging Interaction Toolkit  2023.12.00
Medical Imaging Interaction Toolkit
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
mitkVolumeMapperVtkSmart3D.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef mitkVolumeMapperVtkSmart3D_h
14 #define mitkVolumeMapperVtkSmart3D_h
15 
16 // MITK
17 #include "MitkMapperExtExports.h"
18 #include "mitkBaseRenderer.h"
19 #include "mitkCommon.h"
20 #include "mitkImage.h"
21 #include "mitkVtkMapper.h"
22 
23 // VTK
24 #include <vtkImageChangeInformation.h>
25 #include <vtkSmartPointer.h>
26 #include <vtkVersionMacros.h>
27 #include <vtkVolumeProperty.h>
28 #include <vtkSmartVolumeMapper.h>
29 #include <vtkImageData.h>
30 #include <vtkImageChangeInformation.h>
31 
32 namespace mitk
33 {
34 
35  //##Documentation
36  //## @brief Vtk-based mapper for VolumeData
37  //##
38  //## @ingroup Mapper
40  {
41  public:
43 
44  itkFactorylessNewMacro(Self);
45 
46  itkCloneMacro(Self);
47 
48  vtkProp *GetVtkProp(mitk::BaseRenderer *renderer) override;
49 
50  void ApplyProperties(vtkActor *actor, mitk::BaseRenderer *renderer) override;
51  static void SetDefaultProperties(mitk::DataNode *node, mitk::BaseRenderer *renderer = nullptr, bool overwrite = false);
52 
53  protected:
55  ~VolumeMapperVtkSmart3D() override;
56 
57  void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override;
58 
59  void createMapper(vtkImageData*);
60  void createVolume();
61  void createVolumeProperty();
62  vtkImageData* GetInputImage();
63 
68 
69  void UpdateTransferFunctions(mitk::BaseRenderer *renderer);
70  void UpdateRenderMode(mitk::BaseRenderer *renderer);
71  };
72 
73 } // namespace mitk
74 
75 #endif
mitk::VolumeMapperVtkSmart3D::m_Volume
vtkSmartPointer< vtkVolume > m_Volume
Definition: mitkVolumeMapperVtkSmart3D.h:64
MitkMapperExtExports.h
mitkImage.h
vtkSmartPointer< vtkVolume >
mitk
Find image slices visible on a given plane.
Definition: RenderingTests.dox:1
mitk::VolumeMapperVtkSmart3D::m_VolumeProperty
vtkSmartPointer< vtkVolumeProperty > m_VolumeProperty
Definition: mitkVolumeMapperVtkSmart3D.h:67
mitk::VolumeMapperVtkSmart3D::m_SmartVolumeMapper
vtkSmartPointer< vtkSmartVolumeMapper > m_SmartVolumeMapper
Definition: mitkVolumeMapperVtkSmart3D.h:66
mitk::VolumeMapperVtkSmart3D
Vtk-based mapper for VolumeData.
Definition: mitkVolumeMapperVtkSmart3D.h:39
mitk::Mapper
Base class of all mappers, Vtk as well as OpenGL mappers.
Definition: mitkMapper.h:46
mitk::VtkMapper
Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality.
Definition: mitkVtkMapper.h:47
mitkCommon.h
mitkVtkMapper.h
mitkClassMacro
#define mitkClassMacro(className, SuperClassName)
Definition: mitkCommon.h:36
mitk::BaseRenderer
Definition: mitkBaseRenderer.h:56
mitkBaseRenderer.h
mitk::VolumeMapperVtkSmart3D::m_ImageChangeInformation
vtkSmartPointer< vtkImageChangeInformation > m_ImageChangeInformation
Definition: mitkVolumeMapperVtkSmart3D.h:65
mitk::DataNode
Class for nodes of the DataTree.
Definition: mitkDataNode.h:63
MITKMAPPEREXT_EXPORT
#define MITKMAPPEREXT_EXPORT
Definition: MitkMapperExtExports.h:15
mitk::ROIMapperHelper::SetDefaultProperties
void SetDefaultProperties(DataNode *node, BaseRenderer *renderer, bool override)
Set common default properties for both 2-d and 3-d ROI mappers.