![]() |
ImFusion C++ SDK 4.5.0
|
#include <ImFusion/GUI/ImageView2D.h>
High-level wrapper class for 2D/MPR rendering of one or multiple images. More...
High-level wrapper class for 2D/MPR rendering of one or multiple images.
Serves as Qt wrapper of the GlSliceView and GlSlice classes for 2D/MPR rendering. Depending on the displayOptionsSource property of ImageView2D the DisplayOptions2d used during rendering are either individual for each image (stored in the images' DataComponents) or shared for all shown images (stored in ImageView2D).
This class offers a couple of additional convenience interfaces/functionality over the underlying hierarchy of GlSliceView, GlSlice, and GlSliceRenderer:
Public Types | |
| enum class | ZoomMode { FitToView = 0 , Fixed = 1 , OriginalPixelSize } |
| Enumeration to describe the zooming mode used for a 2D view. More... | |
| enum class | DisplayOptionsSource { View = 0 , Data = 1 } |
| Describes from where to take the DisplayOptions for rendering. More... | |
| Public Types inherited from ImFusion::InteractiveView | |
| enum | LayoutDirection { Horizontal = int(GUI::ViewOverlay::LayoutDirection::Horizontal) , Vertical = int(GUI::ViewOverlay::LayoutDirection::Vertical) } |
| Layout direction when stacking multiple InteractiveOverlays at the same anchor. | |
Public Slots | |
| void | setCenter (const vec3 &c, mat3 *rot=nullptr, bool suppressAnimation=false) |
| Will re-center the view on the given position, can optionally also apply some rotation. | |
| void | setMatrix (const mat4 &mat, bool suppressAnimation=false, Pose::TransformationConvention convention=Pose::TOWORLD) |
| Set the matrix of this view. | |
| void | reset () override |
| Reset the image view. | |
| void | reset (bool suppressAnimation) |
| Reset the image view ensuring that no animation will be performed, even if the animations are enabled globally. | |
| void | setSliceCenter (const vec3 ¢er, bool suppressAnimation=false) |
| Re-center the slice view. | |
| void | setSliceMatrix (const mat4 &matrix, bool suppressAnimation=false) |
| Set the slice view's position and orientation. | |
| void | setDefaultInterpolationMode (int interpolationMode) |
| Set the interpolation mode that will be used as default, for instance when resetting the view (see GlSliceRendererImage::InterpolationMode). | |
| void | setUseBilateralFilter (bool enable) |
| Enables or disables the bilateral filter on the view. | |
| bool | useBilateralFilter () const |
| Returns whether the bilateral filter is enabled. | |
| void | setBilateralFilterRadius (int radius) |
| Sets the radius of the bilateral filter. | |
| void | setBilateralFilterIntensitySigma (double sigma) |
| Sets the bilateral filter intensity sigma. | |
| void | setBilateralFilterSpatialSigma (double sigma) |
| Sets the bilateral filter spatial sigma. | |
| Public Slots inherited from ImFusion::InteractiveView | |
| void | setVisible (bool value) |
| Make view hidden/visible. | |
| void | render () override |
| virtual void | reset () |
Public Member Functions | |
| ImageView2D (std::unique_ptr< GlSliceView > sliceView) | |
| Default constructor. | |
| ImageView2D (bool is3d, Slice::AnatomicalPlane plane) | |
| ~ImageView2D () override | |
| Destructor. | |
| const GlSliceView * | view () const |
| Read-only access to OpenGL view. | |
| GlSliceView * | view () |
| Read-write access to OpenGL view. | |
| void | render () override |
| Will render the view into the viewport() of the current framebuffer by drawing the optional background color, the optional border, the underlying GlView, and finally all overlays(). | |
| void | setImageData (SharedImageSet *is) |
| Set image data. Convenience function which calls corresponding function in slice. | |
| SharedImageSet * | imageData () const |
| ImFusion::ImageView2D::DisplayOptionsSource | displayOptionsSource () const |
| Returns where to take display options from. | |
| ImFusion::ImageView2D::ZoomMode | zoomMode () const |
| Returns the zoom mode. | |
| const DisplayOptions2d & | displayOptions (const Data *data=nullptr) const |
| Return the DisplayOptions used for the given data wrt. | |
| DisplayOptions2d & | displayOptions (const Data *data=nullptr) |
| void | setAutomaticViewSettingsEnabled (bool value) |
| Sets the flag whether ImageView2D should automatically configure settings of the underlying GlSliceView based on the shown data. | |
| bool | isAutomaticViewSettingsEnabled () const |
| Returns the flag whether ImageView2D should automatically configure settings of the underlying GlSliceView based on the shown data. | |
| void | configure (const Properties *p) override |
| Restore view state from properties. | |
| void | configuration (Properties *p) const override |
| Save view state to properties. | |
| InteractionView2D * | interaction2D () const |
| Convenience function to return the first interaction of type InteractionView2D if present. | |
| void | setColormap (GlImage *colormap) |
| Set the color map. | |
| const GlImage * | colormap () const |
| Get the color map, or nullptr if no color mapping is used. | |
| void | transformationChanged (const Data *data) |
| Enables show zoom if a shown image has a new transformation. | |
| void | setRect (const QRect &rect) override |
| Set position and size of view in scene coordinates. | |
| void | onDisplayOptionsChanged (DisplayOptions2d *dop) |
| void | updateScale () |
| int | bilateralFilterRadius () const |
| Returns the bilateral filter radius. | |
| bool | bilateralFilterEnabled () const |
| Returns whether the bilateral filter is enabled. | |
| float | bilateralFilterIntensitySigma () const |
| Returns the bilateral filter intensity sigma. | |
| float | bilateralFilterSpatialSigma () const |
| Returns the bilateral filter spatial sigma. | |
| void | setImage (SharedImage *image) |
| Convenience method to display a single image. | |
| void | setImage (Image *image) |
| Convenience method to display a single image. | |
| Public Member Functions inherited from ImFusion::InteractiveView | |
| InteractiveView (std::unique_ptr< GlView > glView) | |
| Construct view with underlying GlView. | |
| void | setInteractions (std::vector< std::unique_ptr< ViewInteraction > > interactions) |
| Replace all existing ViewInteractions with the ones in interactions. | |
| void | addInteraction (std::unique_ptr< ViewInteraction > interaction, int where=-1) |
| Add an interaction at the given position (default is at the end). | |
| void | removeInteraction (ViewInteraction *interaction) |
| Delete the given interaction, if it exists. Note: This will make the pointer invalid. | |
| std::vector< ViewInteraction * > | interactions () const |
| Returns all view interactions of this view. | |
| template<typename T> | |
| T * | findInteraction () const |
| Returns the first ViewInteraction that dynamic_casts to T or nullptr if no such ViewInteraction exists. | |
| void | setBorderColor (const QColor &color) |
| Set border color. | |
| void | setDrawBorder (bool drawBorder) |
| Set whether to draw a border around the view. | |
| bool | isBorderDrawn () const |
| Get whether to draw a border around the view. | |
| void | setBorderPixelSize (int pixelSize) |
| Set the size of the border around the view. | |
| int | borderPixelSize () const |
| Get the size of the border around the view. | |
| void | setBackgroundColor (const QColor &color) |
| Set border color. | |
| void | setViewGroup (ViewGroup *group) |
| Set associated view group. The view is not automatically added to the view group. | |
| ViewGroup * | viewGroup () const |
| Get associated view group. | |
| QRectF | boundingRect () const |
| Bounding rect in item coordinates. | |
| QRect | rect () const |
| Get position and size of view in scene coordinates. | |
| void | setViewport (const GL::Viewport &rect) override |
| Sets the area where this view is drawn in render() wrt. the attached framebuffer. | |
| virtual bool | sceneEvent (QEvent *qtEvent, const GUI::InputEvent &inputEvent) |
| Called by the DisplayWidget if a user input event has happened on this view. | |
| void | addObject (GUI::ViewObject *object) override |
| Add the given InteractiveObject to this view. | |
| void | removeObject (const GUI::ViewObject *object) override |
| Remove the given InteractiveObject from this view. | |
| virtual bool | hasObject (const InteractiveObject *object) const |
| virtual void | addOverlay (std::unique_ptr< InteractiveOverlay > overlay, int position=-1) |
| Add overlay to this view. | |
| std::unique_ptr< GUI::ViewOverlay > | removeOverlay (GUI::ViewOverlay *overlay) override |
| Remove overlay. The user is responsible for deleting the overlay afterwards. | |
| void | setWaterMark (SharedImage *image) |
| Set a water mark to the view. | |
| void | setAnchorLayoutDirection (InteractiveOverlay::AnchorPoint anchor, LayoutDirection direction) |
| Sets in which direction multiple overlays at one anchor are laid out. | |
| void | requestUpdate () |
| Allows some outside interaction to request an update of the view. | |
| bool | showOverlays () const |
| Get flag whether to show overlays. | |
| void | setAndRunAnimation (std::unique_ptr< Animations::Animation >) |
| Launch an animation while ensuring that only one animation is running at a time for this instance. | |
| Public Member Functions inherited from ImFusion::GUI::View | |
| View (std::unique_ptr< GlView > glView) | |
| Instantiate a new View using the given GlView as renderer; glView must not be null. | |
| const GlView & | glView () const |
| Returns the underlying GlView. | |
| GlView & | glView () |
| Returns the underlying GlView. | |
| const GL::Viewport & | viewport () const |
| Returns the area where this view is drawn in render() wrt. the attached framebuffer. | |
| bool | isVisible () const |
| Returns whether this view has a non-zero viewport and can therefore be considered visible. | |
| std::optional< vec3 > | backgroundColor () const |
| Returns the optional background color used to clear the viewport before rendering anything. | |
| void | setBackgroundColor (std::optional< vec3 > value) |
| Sets the optional background color used to clear the viewport before rendering anything. | |
| const BorderConfig & | borderConfig () const |
| Returns the BorderConfig struct defining if and how to render a border frame surrounding the view. | |
| virtual void | setBorderConfig (const BorderConfig &value) |
| Sets the BorderConfig struct defining if and how to render a border frame surrounding the view. | |
| bool | showsOverlays () const |
| Returns the flag whether to show overlays or not. | |
| void | setShowOverlays (bool value) |
| Sets the flag whether to show overlays or not. | |
| void | setWatermark (const SharedImage &image) |
| Sets a watermark image to be rendered on top of the view. | |
| virtual EventResult | handleInputEvent (const InputEvent &event) |
| Called by the parent Display if a user input event has happened on this view. | |
| void | setDataDisplayDispatcher (std::shared_ptr< DataDisplayDispatcher > ddd) |
| Sets a common DataDisplayDispatcher so that it can be shared across views. | |
| const DataDisplayDispatcher * | dataDisplayDispatcher () const |
| Returns the DataDisplayDispatcher used by this view. | |
| virtual bool | acceptsData (const Data *data) const |
| Returns whether this view is capable of displaying the given data. | |
| void | setVisibleData (const DataList &data) |
| Set the list of datasets that should be shown in this view. | |
| const DataList & | visibleData () const |
| Returns the list of currently displayed datasets. | |
| bool | showData (Data *data) |
| Appends the given dataset to the list of visible datasets. | |
| void | hideData (const Data *data) |
| Removes the given dataset from the list of visible datasets. | |
| void | setEventHandlers (std::vector< std::unique_ptr< EventHandler > > eventHandlers) |
| Replace all existing EventHandlers with the ones in eventHandlers. | |
| void | addEventHandler (std::unique_ptr< EventHandler > eventHandler, int where=-1) |
| Add an EventHandler at the given position (default is at the end). | |
| std::unique_ptr< EventHandler > | removeEventHandler (EventHandler *interaction) |
| Delete the given interaction, if it exists. Note: This will make the pointer invalid. | |
| std::vector< EventHandler * > | eventHandlers () const |
| Returns all view interactions of this view. | |
| template<typename T> | |
| T * | findEventHandler () const |
| Returns the first EventHandler that dynamic_casts to T, or nullptr if no such EventHandler exists. | |
| void | addOverlay (std::unique_ptr< ViewOverlay > overlay, ViewOverlay::Anchor anchor, int position=-1) |
| Inserts overlay into the list of overlays of this view at position of the given anchor. | |
| std::vector< ViewOverlay * > | overlays () const |
| Returns all InteractiveOverlays of this view. | |
| void | setOverlayAnchor (ViewOverlay *overlay, ViewOverlay::Anchor anchor) |
| Set the anchor point to use for the given overlay. | |
| void | setOverlayLayoutDirection (ViewOverlay::Anchor anchor, ViewOverlay::LayoutDirection direction) |
| Sets in which direction multiple overlays at one anchor are laid out. | |
| std::vector< ViewObject * > | objects () const |
| Returns all currently registered ViewObjects of this view. | |
| const GlView * | view () const |
| GlView * | view () |
| Return associated GlView object. | |
| Public Member Functions inherited from ImFusion::Configurable | |
| virtual void | configureDefaults () |
| Retrieve the properties of this object, replaces values with their defaults and sets it again. | |
| void | registerParameter (ParameterBase *param) |
| Register the given Parameter or SubProperty, so that it will be configured during configure()/configuration(). | |
| void | unregisterParameter (const ParameterBase *param) |
| Remove the given Parameter or SubProperty from the list of registered parameters. | |
| Configurable (const Configurable &rhs) | |
| Configurable (Configurable &&rhs) noexcept | |
| Configurable & | operator= (const Configurable &) |
| Configurable & | operator= (Configurable &&) noexcept |
| Public Member Functions inherited from ImFusion::SignalReceiver | |
| SignalReceiver ()=default | |
| Default constructor. | |
| SignalReceiver (const SignalReceiver &other) | |
| Copy constructor, does not copy any existing signal connections from other. | |
| SignalReceiver & | operator= (SignalReceiver rhs) |
| Assignment operator, disconnects all existing connections, does not copy any existing signal connections from rhs. | |
| virtual | ~SignalReceiver () |
| Virtual destructor disconnects from all connected signals. | |
Protected Member Functions | |
| bool | handleObjectEvent (QEvent *qtEvent, const GUI::InputEvent &inputEvent) override |
| Override event handling code for objects. | |
| void | onVisibleDataChanged (const DataList &oldData, const DataList &newData) |
| Removes move images which are not in newData from the GlImageHighlighter. | |
| void | showDataImpl (Data *data) override |
| Override this function to implement custom logic whenever a dataset is added to the list of visible data. | |
| void | hideDataImpl (const Data *data) override |
| Override this function to implement custom logic whenever a dataset is removed from the list of visible data. | |
| Protected Member Functions inherited from ImFusion::InteractiveView | |
| GUI::EventResult | dispatchToViewOverlays (const GUI::InputEvent &event) override |
| Dispatch event to all known ViewOverlays considering m_mouseEventFocusObject and m_touchEventFocusObject. | |
| GUI::EventResult | dispatchToViewObjects (const GUI::InputEvent &event) override |
| Dispatch event to all known ViewObjects considering m_mouseEventFocusObject and m_touchEventFocusObject. | |
| GUI::EventResult | dispatchToViewEventHandlers (const GUI::InputEvent &event) override |
| Dispatch event to all known View::EventHandlers considering m_mouseEventFocusObject and m_touchEventFocusObject. | |
| virtual bool | handleOverlayEvent (QEvent *qtEvent, const GUI::InputEvent &inputEvent) |
| The default implementation will call InteractiveOverlay::sceneEvent() and set m_mouseEventTarget/m_touchEventTarget if needed. | |
| virtual bool | handleInteractionEvent (QEvent *qtEvent, const GUI::InputEvent &inputEvent) |
| Auxiliary method for forwarding the scene event to the view interaction. | |
| Protected Member Functions inherited from ImFusion::GUI::View | |
| void | updateEventFocus (const InputEvent &event, const void *newTarget) |
| Update the internal bookkeeping of "focus" event handlers: | |
| bool | filterEventFocus (const InputEvent &event, const void *target) const |
| Checks if the object target should receive the given event based on the event type and current "focus" object. | |
| Protected Member Functions inherited from ImFusion::SignalReceiver | |
| void | disconnectAll () |
| Disconnects all existing connections. | |
Protected Attributes | |
| GlSliceView * | m_view2D |
| Internal OpenGL view instance. | |
| ZoomMode | m_zoomMode = ZoomMode::FitToView |
| DisplayOptionsSource | m_displayOptionsSource = DisplayOptionsSource::View |
| DisplayOptions2d | m_displayOptionsView |
| Protected Attributes inherited from ImFusion::InteractiveView | |
| std::vector< std::unique_ptr< ViewInteraction > > | m_interactions |
| ViewInteractions used for this view. | |
| ViewGroup * | m_group = nullptr |
| Optional ViewGroup this view is part of. | |
| Protected Attributes inherited from ImFusion::GUI::View | |
| std::unique_ptr< GlView > | m_glView |
| std::unique_ptr< ViewOverlayLayouter > | m_overlayLayouter |
| std::vector< std::unique_ptr< EventHandler > > | m_eventHandlers |
| std::vector< std::unique_ptr< ViewOverlay > > | m_overlays |
| std::vector< ViewObject * > | m_objects |
| DataList | m_visibleData |
| GL::Viewport | m_viewport |
| const void * | m_mouseEventFocusObject = nullptr |
| Pointer to the event receiver that shall receive MouseEvent::Type::Move events exclusively. | |
| const void * | m_touchEventFocusObject = nullptr |
| Pointer to the event receiver that shall receive TouchEvent::Type::Update events exclusively. | |
| Protected Attributes inherited from ImFusion::Configurable | |
| std::vector< Param > | m_params |
| List of all registered Parameter and SubProperty instances. | |
Properties | |
| int | interpolation |
| bool | flip |
| ImFusion::GlSlice::BlendingMode | blendingMode |
| double | blendFactor |
| double | zoom |
| ImFusion::ImageView2D::ZoomMode | zoomMode |
| bool | showZoom |
| bool | pixelZoom |
| int | showIn3D |
| double | window |
| double | level |
| double | gamma |
| bool | inverted |
| double | thickness |
| bool | useBilateralFilter |
| int | bilateralFilterRadius |
| float | bilateralFilterIntensitySigma |
| float | bilateralFilterSpatialSigma |
| bool | showOrientationMarkers |
| ImFusion::ImageView2D::DisplayOptionsSource | displayOptionsSource |
| Properties inherited from ImFusion::InteractiveView | |
| QRect | rect |
Property read methods | |
| int | interpolation () const |
| bool | flip () const |
| ImFusion::GlSlice::BlendingMode | blendingMode () const |
| double | blendFactor () const |
| View blending alpha value setting of the given data. If data is 0, returns the global setting. | |
| double | zoom () const |
| View zoom. | |
| double | window () const |
| View window setting of the given data. If data is 0, returns the global setting. | |
| double | level () const |
| View level setting of the given data. If data is 0, returns the global setting. | |
| double | gamma () const |
| View gamma setting of the given data. If data is 0, returns the global setting. | |
| bool | isInverted () const |
| View color inversion setting of the given data. If data is 0, returns the global setting. | |
| double | thickness () const |
| Slice thickness in case of a 3D MPR. | |
| bool | showZoom () const |
| Show zoom flag. | |
| bool | showIntersectionLines () const |
| Show slice intersection lines flag. | |
| bool | showThickness () const |
| Show slice thickness flag. | |
| bool | showOrientationMarkers () const |
| Returns the whether to draw orientation markers next to the MPR cross section lines. | |
| int | showIn3D () const |
| 3D visualization of the slice | |
| bool | pixelZoom () const |
| Pixel zoom. | |
Property write methods | |
| void | setInterpolation (int val) |
| void | setFlip (bool val) |
| void | setBlendingMode (ImFusion::GlSlice::BlendingMode val) |
| void | setBlendFactor (double val) |
| Set blending alpha value setting of the given data. If data is 0, returns the global setting. | |
| void | addMoveImage (SharedImageSet *img) |
| Adds the given image to the list of images to which the "move image" feature is applied. | |
| void | removeMoveImage (const SharedImageSet *img) |
| Removes the given image from the list of images to which the "move image" feature is applied. | |
| std::vector< SharedImageSet * > | moveImages () const |
| Returns the list of images that should be moved if interactionTarget() is InteractionTarget::Image. | |
| void | setZoom (double val) |
| Set view zoom. | |
| void | setPixelZoom (bool val) |
| Set pixel zoom. | |
| void | setShowZoom (bool flag) |
| Specify if the view zoom shall be shown on the slice itself (affecting other views). | |
| void | setShowIntersectionLines (bool flag) |
| Specify if the intersection lines with other slices shall be drawn. | |
| void | setShowThickness (bool flag) |
| Specify if the slice thickness shall be drawn. | |
| void | setShowOrientationMarkers (bool value) |
| Sets the whether to draw orientation markers next to the MPR cross section lines. | |
| void | setDefaultOrientationMarkerTypeToQuadruped (bool value) |
| Sets the default type of the orientation markers to Quadruped. | |
| void | setShowIn3D (int mode) |
| Specify the 3D visualization of this slice. | |
| void | setWindow (double val) |
| Set view window of the given data. If data is 0, sets the global setting. | |
| void | setLevel (double val) |
| Set view level of the given data. If data is 0, sets the global setting. | |
| void | setGamma (double val) |
| Set view gamma of the given data. If data is 0, sets the global setting. | |
| void | setInverted (bool inverted) |
| Set color inversion of the given data. If data is 0, sets the global setting. | |
| void | setThickness (double val) |
| Set the 3D MPR slice thickness. | |
| void | setDisplayOptionsSource (ImFusion::ImageView2D::DisplayOptionsSource value) |
| Sets where to take display options from. | |
| void | setZoomMode (ImFusion::ImageView2D::ZoomMode value) |
| Sets the zoom mode. | |
Property notifiers | |
| void | interpolationChanged (int val) |
| void | flipChanged (bool val) |
| void | blendingModeChanged (ImFusion::GlSlice::BlendingMode val) |
| void | blendFactorChanged (double val) |
| void | imageDataChanged () |
| Emitted when the image data has changed. | |
| void | zoomChanged (double val) |
| Emitted when zoom changed. | |
| void | pixelZoomChanged (bool val) |
| Emitted when pixel zoom changed. | |
| void | showZoomChanged (bool flag) |
| void | showIn3DChanged (int val) |
| void | showOrientationMarkersChanged (bool value) |
| void | windowChanged (double val) |
| Emitted when window changed. | |
| void | levelChanged (double val) |
| Emitted when level changed. | |
| void | gammaChanged (double val) |
| Emitted when gamma changed. | |
| void | invertedChanged (bool inv) |
| Emitted when inverted changed. | |
| void | thicknessChanged (double val) |
| Emitted when slice thickness changes. | |
| void | displayOptionsSourceChanged (ImFusion::ImageView2D::DisplayOptionsSource value) |
| void | zoomModeChanged (ImFusion::ImageView2D::ZoomMode value) |
| void | bilateralFilterRadiusChanged (int radius) |
| void | bilateralFilterIntensitySigmaChanged (float sigma) |
| void | bilateralFilterSpatialSigmaChanged (float sigma) |
| void | useBilateralFilterChanged (bool enable) |
Additional Inherited Members | |
| Signals inherited from ImFusion::InteractiveView | |
| void | visibilityChanged (bool visible) |
| void | rectChanged (QRect rect) |
| void | updateRequested () |
| void | visibilityChangeRequested (bool visible) |
| void | visibleDataChanged (const DataList &before, const DataList &now) |
| Emitted in setVisibleData after the visible data has been changed from before to now. | |
| Public Attributes inherited from ImFusion::InteractiveView | |
| Signal< DataList > | signalRendered |
| Emitted at the end of render(); the passed DataList will hold all visible data. | |
| Public Attributes inherited from ImFusion::GUI::View | |
| Signal | signalUpdateRequested |
| Emitted when this view or one of its overlays has become outdated and needs to be re-rendered. | |
| Signal< const DataList &, const DataList & > | signalVisibleDataChanged |
| Emitted when visibleData() has changed. | |
| Public Attributes inherited from ImFusion::Configurable | |
| Signal | signalParametersChanged |
| Emitted whenever one of the registered Parameters' or SubPropertys' signalValueChanged signal was emitted. | |
|
strong |
Enumeration to describe the zooming mode used for a 2D view.
|
strong |
|
overridevirtual |
Will render the view into the viewport() of the current framebuffer by drawing the optional background color, the optional border, the underlying GlView, and finally all overlays().
Reimplemented from ImFusion::GUI::View.
| const DisplayOptions2d & ImFusion::ImageView2D::displayOptions | ( | const Data * | data = nullptr | ) | const |
Return the DisplayOptions used for the given data wrt.
to the views' display options source setting. If the display options source is set to View, this function will return the view's display options. If the display options source is set to Modality, this function will return the global display options wrt. to data. If the display options source is set to Data, this function will return the display options of data. If data is 0 but required, it will use the first visible data of this view instead.
|
inline |
Sets the flag whether ImageView2D should automatically configure settings of the underlying GlSliceView based on the shown data.
This can be aspects such as the "vertical flip" flag (GlSliceView::setFlip()), the "show zoom extent" flag (GlSliceView::showZoom()), and the "ignore image matrix" flag (GlSliceRendererImage::setIgnoreMatrix()).
|
overridevirtual |
Restore view state from properties.
Reimplemented from ImFusion::Configurable.
|
overridevirtual |
Save view state to properties.
Reimplemented from ImFusion::Configurable.
|
overridevirtual |
Set position and size of view in scene coordinates.
Reimplemented from ImFusion::InteractiveView.
|
slot |
Adds the given image to the list of images to which the "move image" feature is applied.
Will also enable the "move image" feature by setting the InteractionTarget flag to Image.
|
slot |
Removes the given image from the list of images to which the "move image" feature is applied.
If there are no move images left it will also disable the "move image" feature again by setting the InteractionTarget flag to Slice.
|
slot |
Returns the list of images that should be moved if interactionTarget() is InteractionTarget::Image.
|
slot |
Specify the 3D visualization of this slice.
| mode | Integer representation of the GlSlice::ObjectRenderModes bitfield. |
|
signal |
Emitted when window changed.
|
signal |
Emitted when level changed.
|
signal |
Emitted when gamma changed.
|
signal |
Emitted when inverted changed.
|
overrideprotectedvirtual |
Override event handling code for objects.
Reimplemented from ImFusion::InteractiveView.
|
overrideprotectedvirtual |
Override this function to implement custom logic whenever a dataset is added to the list of visible data.
The default implementation will call DataDisplayDispatcher::show() and add data to m_visibleData.
Reimplemented from ImFusion::GUI::View.
|
overrideprotectedvirtual |
Override this function to implement custom logic whenever a dataset is removed from the list of visible data.
The default implementation will call DataDisplayDispatcher::hide() and remove data to m_visibleData.
Reimplemented from ImFusion::GUI::View.
| void ImFusion::ImageView2D::setImage | ( | SharedImage * | image | ) |
Convenience method to display a single image.
Internally, creates a container SharedImageSet holding image and then calls setVisibleData(). InteractiveView will not take ownership of image. If image is 0, will remove all data from this view.
| void ImFusion::ImageView2D::setImage | ( | Image * | image | ) |
Convenience method to display a single image.
Internally, creates a container SharedImageSet holding image and then calls setVisibleData(). InteractiveView will not take ownership of image, it must stay alive as long as the image is shown. If image is 0, will remove all data from this view.