Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkTransferFunctionInitializer.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 mitkTransferFunctionInitializer_h
14 #define mitkTransferFunctionInitializer_h
15 
16 #include <vtkColorTransferFunction.h>
17 #include <vtkPiecewiseFunction.h>
18 #include <vtkSmartPointer.h>
19 
20 #include <mitkTransferFunction.h>
21 
22 #include <itkObject.h>
23 #include <itkObjectFactory.h>
24 
25 #include <MitkCoreExports.h>
26 
27 namespace mitk
28 {
42  class MITKCORE_EXPORT TransferFunctionInitializer : public itk::Object
43  {
44  public:
46 
47  itkFactorylessNewMacro(Self);
48 
49  itkCloneMacro(Self)
51 
56  static void GetPresetNames(std::vector<std::string> &presetNames);
57 
62  void SetTransferFunction(TransferFunction::Pointer transferFunction);
63 
68  mitk::TransferFunction::Pointer GetTransferFunction();
69 
78  void SetTransferFunctionMode(int mode);
79 
85  void InitTransferFunctionMode();
86 
87  protected:
88  TransferFunctionInitializer(TransferFunction::Pointer transferFunction = nullptr);
90 
91  private:
92  int m_Mode;
93  mitk::TransferFunction::Pointer m_transferFunction;
94 
95  // Define Transfer Function
96  enum TransferFunctionMode
97  {
98  TF_CT_DEFAULT,
99  TF_CT_BLACK_WHITE,
100  TF_CT_THORAX_LARGE,
101  TF_CT_THORAX_SMALL,
102  TF_CT_BONE,
103  TF_CT_BONE_GRADIENT,
104  TF_CT_CARDIAC,
105  TF_MR_GENERIC
106  };
107 
108  // remove all old points
109  void RemoveAllPoints();
110  void SetModified();
111  void SetCtDefaultMode();
112  void SetCtBlackWhiteMode();
113  void SetCtThoraxLargeMode();
114  void SetCtThoraxSmallMode();
115  void SetCtBoneMode();
116  void SetCtBoneGradientMode();
117  void SetCtCardiacMode();
118  void SetMrGenericMode();
119  };
120 }
121 
122 #endif
#define MITKCORE_EXPORT
Wrapper class for VTK scalar opacity, gradient opacity, and color transfer functions.
mitkClassMacroItkParent(TransferFunctionInitializer, itk::Object)
Wrapper for VTK scalar opacity, gradient opacity, and color transfer functions.
#define mitkNewMacro1Param(classname, type)
Definition: mitkCommon.h:62
Find image slices visible on a given plane.