Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkContourModelSetMapper3D.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 mitkContourModelSetMapper3D_h
14 #define mitkContourModelSetMapper3D_h
15 
16 #include <mitkCommon.h>
18 
19 #include <mitkBaseRenderer.h>
20 #include <mitkVtkMapper.h>
21 
22 #include <mitkContourModel.h>
23 #include <mitkContourModelSet.h>
25 
26 #include <vtkActor.h>
27 #include <vtkAssembly.h>
28 #include <vtkPolyData.h>
29 #include <vtkPolyDataMapper.h>
30 #include <vtkProp.h>
31 #include <vtkSmartPointer.h>
32 #include <vtkTubeFilter.h>
33 
34 namespace mitk
35 {
45  {
46  public:
48 
49  itkFactorylessNewMacro(Self);
50  itkCloneMacro(Self);
51 
56 
60  void Update(mitk::BaseRenderer *renderer) override;
61 
66  vtkProp *GetVtkProp(mitk::BaseRenderer *renderer) override;
67 
69  {
70  public:
73 
74  mitk::ContourModelToSurfaceFilter::Pointer m_contourToPolyData;
75 
77  itk::TimeStamp m_LastUpdateTime;
78 
82  ~LocalStorage() override {}
83  };
84 
87 
93 
99  static void SetDefaultProperties(mitk::DataNode *node, mitk::BaseRenderer *renderer = nullptr, bool overwrite = false);
100 
101  protected:
104 
105  void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override;
106 
108  mitk::BaseRenderer *renderer);
109 
112  };
113 }
114 #endif
#define MITKCONTOURMODEL_EXPORT
Organizes the rendering process.
~LocalStorage() override
Default deconstructor of the local storage.
mitk::ContourModelToSurfaceFilter::Pointer m_contourToPolyData
LocalStorage()
Default constructor of the local storage.
itk::TimeStamp m_LastUpdateTime
Timestamp of last update of stored data.
vtkSmartPointer< vtkAssembly > m_Assembly
Assembly of contours.
VTK-based mapper to display a mitk::ContourModelSet in a 3D render window.
virtual void ApplyContourModelSetProperties(BaseRenderer *renderer)
static void SetDefaultProperties(mitk::DataNode *node, mitk::BaseRenderer *renderer=nullptr, bool overwrite=false)
Set default rendering properties for ContourModelSet 3D display.
mitk::LocalStorageHandler< LocalStorage > m_LSH
Handler that manages per-renderer LocalStorage instances.
virtual void ApplyContourProperties(mitk::BaseRenderer *renderer)
const mitk::ContourModelSet * GetInput(void)
Return the input ContourModelSet data object.
mitkClassMacro(ContourModelSetMapper3D, VtkMapper)
void Update(mitk::BaseRenderer *renderer) override
Check whether this mapper needs to regenerate its rendering data.
vtkProp * GetVtkProp(mitk::BaseRenderer *renderer) override
Return the top-level VTK prop for the given renderer.
virtual vtkSmartPointer< vtkPolyData > CreateVtkPolyDataFromContour(mitk::ContourModel *inputContour, mitk::BaseRenderer *renderer)
LocalStorage * GetLocalStorage(mitk::BaseRenderer *renderer)
Retrieve the LocalStorage for the given renderer.
void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override
Generate the data needed for rendering into renderer.
A collection of ContourModel instances managed as a single BaseData object.
A time-resolved contour representation consisting of linked vertices in 3D space.
Central node class of the MITK data tree, associating a data object with properties and mappers.
Definition: mitkDataNode.h:72
Base class for mapper-specific rendering resources.
Definition: mitkMapper.h:181
Base class of all VTK-based Mappers for displaying primitives using VTK functionality.
Definition: mitkVtkMapper.h:53
Find image slices visible on a given plane.