13 #ifndef mitkMultiLabelSegmentationVtkMapper3D_h
14 #define mitkMultiLabelSegmentationVtkMapper3D_h
27 #include <vtkSmartPointer.h>
29 class vtkPolyDataMapper;
32 class vtkVolumeProperty;
34 class vtkSmartVolumeMapper;
35 class vtkColorTransferFunction;
36 class vtkPiecewiseFunction;
40 class MultiLabelSegmentationGroupMapping;
86 std::map<const Image*, std::unique_ptr<MultiLabelSegmentationGroupMapping>>
m_GroupPipelines;
#define MITKMULTILABEL_EXPORT
Class for nodes of the DataTree.
Interface to application preferences.
Base class for mapper specific rendering resources.
Base class of all mappers, Vtk as well as OpenGL mappers.
Internal class holding the mapper, actor, etc. for each of the 3 2D render windows.
itk::TimeStamp m_LastPropertyUpdateTime
Timestamp of last update of a property.
std::map< const Image *, std::unique_ptr< MultiLabelSegmentationGroupMapping > > m_GroupPipelines
mitk::TimeStepType m_LastUpdateTimeStep
LocalStorage()
Default constructor of the local storage.
bool m_3DRenderingPreference
IPreferences * m_SegPreferences
vtkSmartPointer< vtkColorTransferFunction > m_TransferFunction
~LocalStorage() override
Default destructor of the local storage.
itk::TimeStamp m_LastDataUpdateTime
Timestamp of last update of stored data.
std::optional< bool > m_GPUCheckSuccessfull
vtkSmartPointer< vtkPiecewiseFunction > m_FadedOpacityTransferFunction
mitk::LookupTable::Pointer m_LabelLookupTable
vtkSmartPointer< vtkPiecewiseFunction > m_OpacityTransferFunction
vtkSmartPointer< vtkPropAssembly > m_Actors
Mapper to resample and display 2D slices of a 3D labelset image.
void Update(mitk::BaseRenderer *renderer) override
Checks whether this mapper needs to update itself and generate data.
~MultiLabelSegmentationVtkMapper3D() override
MultiLabelSegmentationVtkMapper3D()
void UpdateLookupTable(LocalStorage *localStorage)
Generates the look up table that should be used.
void UpdateVolumeMapping(LocalStorage *localStorage, const OutdatedGroupVectorType &outdatedData)
mitkClassMacro(MultiLabelSegmentationVtkMapper3D, VtkMapper)
vtkProp * GetVtkProp(mitk::BaseRenderer *renderer) override
OutdatedGroupVectorType CheckForOutdatedGroups(mitk::MultiLabelSegmentationVtkMapper3D::LocalStorage *ls, mitk::MultiLabelSegmentation *seg, bool fadedPipelineChanged)
LocalStorage * GetLocalStorage(mitk::BaseRenderer *renderer)
Get the LocalStorage corresponding to the current renderer.
static void SetDefaultProperties(mitk::DataNode *node, mitk::BaseRenderer *renderer=nullptr, bool overwrite=false)
mitk::LocalStorageHandler< LocalStorage > m_LSH
The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows.
void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override
Does the actual resampling, without rendering the image yet. All the data is generated inside this me...
std::vector< std::pair< mitk::MultiLabelSegmentation::GroupIndexType, const mitk::Image * > > OutdatedGroupVectorType
MultiLabelSegmentation class for handling labels and layers in a segmentation session.
Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality.
Find image slices visible on a given plane.