13 #ifndef mitkRegEvaluationMapper2D_h
14 #define mitkRegEvaluationMapper2D_h
17 #include <mapRegistration.h>
29 #include <vtkSmartPointer.h>
30 #include <vtkPropAssembly.h>
36 class vtkPolyDataMapper;
40 class vtkImageExtractComponents;
41 class vtkImageReslice;
42 class vtkImageChangeInformation;
46 class vtkMitkApplyLevelWindowToRGBFilter;
62 itkFactorylessNewMacro(
Self);
#define MITKMATCHPOINTREGISTRATION_EXPORT
Class for nodes of the DataTree.
Image class for storing images.
MAPRegistrationWrapper Wrapper class to allow the handling of MatchPoint registration objects as mitk...
Base class for mapper specific rendering resources.
Base class of all mappers, Vtk as well as OpenGL mappers.
Describes a two-dimensional, rectangular plane.
Internal class holding the mapper, actor, etc. for each of the 3 2D render windows.
vtkSmartPointer< vtkPropAssembly > m_Actors
vtkSmartPointer< vtkLookupTable > m_DefaultLookupTable
vtkSmartPointer< vtkImageData > m_EvaluationImage
Current slice of a 2D render window.
mitk::ExtractSliceFilter::Pointer m_Reslicer
The actual reslicer (one per renderer)
vtkSmartPointer< vtkLookupTable > m_ColorLookupTable
The lookuptables for colors and level window.
mitk::Image::Pointer m_slicedMappedImage
itk::TimeStamp m_LastUpdateTime
Timestamp of last update of stored data.
vtkSmartPointer< vtkImageExtractComponents > m_MappedExtractFilter
vtkSmartPointer< vtkMitkLevelWindowFilter > m_MappedLevelWindowFilter
This filter is used to apply the level window to moving image.
mitk::Image::Pointer m_slicedTargetImage
vtkSmartPointer< vtkPlaneSource > m_Plane
Plane on which the slice is rendered as texture.
vtkSmartPointer< vtkImageExtractComponents > m_TargetExtractFilter
LocalStorage()
Default constructor of the local storage.
~LocalStorage() override
Default deconstructor of the local storage.
vtkSmartPointer< vtkMitkLevelWindowFilter > m_TargetLevelWindowFilter
This filter is used to apply the level window to target image.
vtkSmartPointer< vtkActor > m_Actor
Actor of a 2D render window.
vtkSmartPointer< vtkTexture > m_Texture
The texture which is used to render the current slice.
vtkSmartPointer< vtkPolyData > m_EmptyPolyData
Empty vtkPolyData that is set when rendering geometry does not intersect the image geometry.
mitk::ScalarType * m_mmPerPixel
mmPerPixel relation between pixel and mm. (World spacing).
vtkSmartPointer< vtkPolyDataMapper > m_Mapper
Mapper of a 2D render window.
Mapper to resample and display 2D slices of registration evaluation visualization.
void TransformActor(mitk::BaseRenderer *renderer)
Transforms the actor to the actual position in 3D.
const mitk::MAPRegistrationWrapper * GetRegistration(void)
Get the target image to map.
void ApplyLevelWindow(mitk::BaseRenderer *renderer, const mitk::DataNode *dataNode, vtkMitkLevelWindowFilter *levelFilter)
ApplyLevelWindow Apply the level window for the given renderer.
bool RenderingGeometryIntersectsImage(const PlaneGeometry *renderingGeometry, SlicedGeometry3D *imageGeometry)
Calculates whether the given rendering geometry intersects the given SlicedGeometry3D.
void Update(mitk::BaseRenderer *renderer) override
Checks whether this mapper needs to update itself and generate data.
const mitk::DataNode * GetMovingNode(void)
void PrepareContour(mitk::DataNode *datanode, LocalStorage *localStorage)
void PrepareDifference(LocalStorage *localStorage)
void ApplyLookuptable(mitk::BaseRenderer *renderer, const mitk::DataNode *dataNode, vtkMitkLevelWindowFilter *levelFilter)
This method applies (or modifies) the lookuptable for all types of images.
static void SetDefaultProperties(mitk::DataNode *node, mitk::BaseRenderer *renderer=nullptr, bool overwrite=false)
Set the default properties for general image rendering.
mitkClassMacro(RegEvaluationMapper2D, VtkMapper)
void PrepareCheckerBoard(mitk::DataNode *datanode, LocalStorage *localStorage)
float CalculateLayerDepth(mitk::BaseRenderer *renderer)
This method uses the vtkCamera clipping range and the layer property to calculate the depth of the ob...
vtkProp * GetVtkProp(mitk::BaseRenderer *renderer) override
void GenerateDataForRenderer(mitk::BaseRenderer *renderer) override
Does the actual resampling, without rendering the image yet. All the data is generated inside this me...
void PrepareWipe(mitk::DataNode *datanode, LocalStorage *localStorage, const Point2D ¤tIndex2D)
const mitk::DataNode * GetTargetNode(void)
const mitk::Image * GetTargetImage(void)
Get the target image to map.
~RegEvaluationMapper2D() override
void PrepareBlend(mitk::DataNode *datanode, LocalStorage *localStorage)
LocalStorage * GetLocalStorage(mitk::BaseRenderer *renderer)
Get the LocalStorage corresponding to the current renderer.
void ApplyOpacity(mitk::BaseRenderer *renderer)
Set the opacity of the actor.
mitk::LocalStorageHandler< LocalStorage > m_LSH
The LocalStorageHandler holds all (three) LocalStorages for the three 2D render windows.
void GeneratePlane(mitk::BaseRenderer *renderer, double planeBounds[6])
Generates a plane according to the size of the resliced image in millimeters.
void PrepareColorBlend(LocalStorage *localStorage)
const mitk::Image * GetMovingImage(void)
Get the moving image to map.
Describes the geometry of a data object consisting of slices.
Base class of all Vtk Mappers in order to display primitives by exploiting Vtk functionality.
Applies the grayvalue or color/opacity level window to scalar or RGB(A) images.
Find image slices visible on a given plane.