|
virtual std::vector< std::string > | GetClassHierarchy () const override |
|
virtual const char * | GetClassName () const |
|
Pointer | Clone () const |
|
const mitk::Image * | GetInput (void) |
| Get the Image to map. More...
|
|
void | Update (mitk::BaseRenderer *renderer) override |
| Checks whether this mapper needs to update itself and generate data. More...
|
|
vtkProp * | GetVtkProp (mitk::BaseRenderer *renderer) override |
|
const LocalStorage * | GetConstLocalStorage (mitk::BaseRenderer *renderer) |
| Get the LocalStorage corresponding to the current renderer. More...
|
|
void | ApplyRenderingMode (mitk::BaseRenderer *renderer) |
| This method switches between different rendering modes (e.g. use a lookup table or a transfer function). Detailed documentation about the modes can be found here: mitk::RenderingModeProperty. More...
|
|
virtual bool | IsVtkBased () const override |
| Returns whether this is an vtk-based mapper. More...
|
|
void | MitkRender (mitk::BaseRenderer *renderer, mitk::VtkPropRenderer::RenderType type) override |
| Determines which geometry should be rendered (opaque, translucent, volumetric, overlay) and calls the appropriate function. More...
|
|
virtual void | MitkRenderOverlay (BaseRenderer *renderer) |
| Checks visibility and renders the overlay. More...
|
|
virtual void | MitkRenderOpaqueGeometry (BaseRenderer *renderer) |
| Checks visibility and renders untransparent geometry. More...
|
|
virtual void | MitkRenderTranslucentGeometry (BaseRenderer *renderer) |
| Checks visibility and renders transparent geometry. More...
|
|
virtual void | MitkRenderVolumetricGeometry (BaseRenderer *renderer) |
| Checks visibility and renders volumes. More...
|
|
virtual bool | HasVtkProp (const vtkProp *prop, BaseRenderer *renderer) |
| Returns true if this mapper owns the specified vtkProp for the given BaseRenderer. More...
|
|
virtual void | UpdateVtkTransform (mitk::BaseRenderer *renderer) |
| Set the vtkTransform of the m_Prop3D for the current time step of renderer. More...
|
|
virtual void | ApplyProperties (vtkActor *actor, mitk::BaseRenderer *renderer) |
| Apply color and opacity properties read from the PropertyList. More...
|
|
void | ApplyShaderProperties (mitk::BaseRenderer *) |
|
void | ApplyColorAndOpacityProperties (mitk::BaseRenderer *renderer, vtkActor *actor) override |
| Apply color and opacity properties read from the PropertyList. Called by mapper subclasses. More...
|
|
virtual void | ReleaseGraphicsResources (mitk::BaseRenderer *) |
| Release vtk-based graphics resources that are being consumed by this mapper. More...
|
|
virtual void | SetDataNode (DataNode *_arg) |
| Set the DataNode containing the data to map. More...
|
|
virtual DataNode * | GetDataNode () const |
| Get the DataNode containing the data to map. Method only returns valid DataNode Pointer if the mapper belongs to a data node. Otherwise, the returned DataNode Pointer might be invalid. More...
|
|
BaseData * | GetData () const |
| Get the data to map. More...
|
|
virtual bool | GetColor (float rgb[3], BaseRenderer *renderer, const char *name="color") const |
| Convenience access method for color properties (instances of ColorProperty) More...
|
|
virtual bool | GetVisibility (bool &visible, BaseRenderer *renderer, const char *name="visible") const |
| Convenience access method for visibility properties (instances of BoolProperty) More...
|
|
virtual bool | GetOpacity (float &opacity, BaseRenderer *renderer, const char *name="opacity") const |
| Convenience access method for opacity properties (instances of FloatProperty) More...
|
|
virtual bool | GetLevelWindow (LevelWindow &levelWindow, BaseRenderer *renderer, const char *name="levelwindow") const |
| Convenience access method for color properties (instances of LevelWindoProperty) More...
|
|
virtual bool | IsVisible (BaseRenderer *renderer, const char *name="visible") const |
| Convenience access method for visibility properties (instances of BoolProperty). Return value is the visibility. Default is visible==true, i.e., true is returned even if the property (propertyKey) is not found. More...
|
|
int | GetTimestep () const |
| Returns the current time step as calculated from the renderer. More...
|
|
virtual bool | IsLODEnabled (BaseRenderer *) const |
|
Mapper to resample and display 2D slices of a 3D image.
The following image gives a brief overview of the mapping and the involved parts.
First, the image is resliced by means of vtkImageReslice. The volume image serves as input to the mapper in addition to spatial placement of the slice and a few other properties such as thick slices. This code was already present in the old version (mitkImageMapperGL2D).
Next, the obtained slice (m_ReslicedImage) is put into a vtkMitkLevelWindowFilter and the scalar levelwindow, opacity levelwindow and optional clipping to local image bounds are applied
Next, the output of the vtkMitkLevelWindowFilter is used to create a texture (m_Texture) and a plane onto which the texture is rendered (m_Plane). For mapping purposes, a vtkPolyDataMapper (m_Mapper) is utilized. Orthographic projection is applied to create the effect of a 2D image. The mapper and the texture are assigned to the actor (m_Actor) which is passed to the VTK rendering pipeline via the method GetVtkProp().
In order to transform the textured plane to the correct position in space, the same transformation as used for reslicing is applied to both the camera and the vtkActor. All important steps are explained in more detail below. The resulting 2D image (by reslicing the underlying 3D input image appropriately) can either be directly rendered in a 2D view or just be calculated to be used later by another rendering entity, e.g. in texture mapping in a 3D view.
Properties that can be set for images and influence the imageMapper2D are:
- "opacity": (FloatProperty) Opacity of the image
- "color": (ColorProperty) Color of the image
- "LookupTable": (mitkLookupTableProperty) If this property is set, the default lookuptable will be ignored and the "LookupTable" value will be used instead.
- "Image Rendering.Mode": This property decides which mode is used to render images. (E.g. if a lookup table or a transferfunction is applied). Detailed documentation about the modes can be found here: mitk::RenderingModeProperty
- "Image Rendering.Transfer Function": (mitkTransferFunctionProperty) If this property is set, a color transferfunction will be used to color the image.
- "binary": (BoolProperty) is the image a binary image or not
- "outline binary": (BoolProperty) show outline of the image or not
- "texture interpolation": (BoolProperty) texture interpolation of the image
- "reslice interpolation": (VtkResliceInterpolationProperty) reslice interpolation of the image
- "in plane resample extent by geometry": (BoolProperty) Do it or not
- "bounding box": (BoolProperty) Is the Bounding Box of the image shown or not
- "layer": (IntProperty) Layer of the image
- "volume annotation color": (ColorProperty) color of the volume annotation, TODO has to be reimplemented
- "volume annotation unit": (StringProperty) annotation unit as string (does not implicit convert the unit!) unit is ml or cm3, TODO has to be reimplemented
The default properties are:
- "opacity", mitk::FloatProperty::New(0.3f), renderer, overwrite )
- "color", ColorProperty::New(1.0,0.0,0.0), renderer, overwrite )
- "binary", mitk::BoolProperty::New( true ), renderer, overwrite )
- "outline binary", mitk::BoolProperty::New( false ), renderer, overwrite )
- "texture interpolation", mitk::BoolProperty::New( false ) )
- "reslice interpolation", mitk::VtkResliceInterpolationProperty::New() )
- "in plane resample extent by geometry", mitk::BoolProperty::New( false ) )
- "bounding box", mitk::BoolProperty::New( false ) )
- "layer", mitk::IntProperty::New(10), renderer, overwrite)
- "Image Rendering.Transfer Function": Default color transfer function for CTs
- "LookupTable": Rainbow color.
If the modality-property is set for an image, the mapper uses modality-specific default properties, e.g. color maps, if they are defined.
Definition at line 116 of file mitkImageVtkMapper2D.h.