|
open_iA 2024.7
|
vtk-based slicer widget. "Channels" (i.e. image layers) are inserted via the addChannel method More...
#include <iASlicerImpl.h>
Public Slots | |
| void | rotateSlice (double angle) override |
| void | saveAsImage () override |
| Save an image of the image viewer native resolution or the current view. | |
| void | saveImageStack () |
| Save an image stack of the current view. | |
| void | saveMovie () override |
| Save a movie of a full slice-through of the specimen from top to bottom. | |
| void | setAngle (int mode, double angle) |
| to synchronize angles of all modes between different slicers | |
| void | setProfileHandlesOn (bool isOn) |
| Toggle the possibility to move start and end point of the profile. | |
| void | setProfilePoint (int pointIdx, double const *globalPos) |
| Sets coordinates for line profile. | |
| void | setSlabCompositeMode (int compositeMode) |
| void | setSlabThickness (int thickness) |
| void | setSliceNumber (int sliceNumber) override |
| void | setSlicePosition (double slicePos) override |
| void | setSliceProfileOn (bool isOn) |
| Toggle the "raw" profile mode, i.e. whether the profile is shown on top of the slicer image. | |
| void | update () override |
Public Slots inherited from iASlicer | |
| virtual void | rotateSlice (double angle)=0 |
| virtual void | saveAsImage ()=0 |
| Save an image of the image viewer native resolution or the current view. | |
| virtual void | saveMovie ()=0 |
| Save a movie of a full slice-through of the specimen from top to bottom. | |
| virtual void | setSliceNumber (int sliceNumber)=0 |
| Set the current slice of the dataset currently sliced. | |
| virtual void | setSlicePosition (double slicePos)=0 |
| Set the position to slice. | |
| virtual void | update ()=0 |
Signals | |
| void | profilePointChanged (int pointIdx, double *globalPos) |
| void | regionSelected (double minVal, double maxVal, uint channelID) |
| void | sliceRangeChanged (int minIdx, int maxIdx, int val) |
| triggered when the slice number range has changed; parameters are new minimum, maximum and current index | |
| void | sliceRotated (int mode, double angle) |
| triggered when slice was rotated | |
Signals inherited from iASlicer | |
| void | altMouseWheel (int angle) |
| void | clicked () |
| void | ctrlMouseWheel (int angle) |
| void | dblClicked () |
| void | leftClicked (double x, double y, double z) |
| Triggered on mouse left button clicked. | |
| void | leftDragged (double x, double y, double z) |
| Triggered on mouse move with left button clicked. | |
| void | leftReleased (double x, double y, double z) |
| Triggered on mouse button released. | |
| void | magicLensToggled (bool enabled) |
| void | mouseMoved (double x, double y, double z, int mode) |
| Triggered on mouse move, sends x,y,z (world) coordinates and mode of slicer. | |
| void | rightClicked (double x, double y, double z) |
| Triggered on mouse right button clicked. | |
| void | shiftMouseWheel (int angle) |
| void | sliceNumberChanged (int mode, int sliceNumber) |
| triggered when slice number changed. | |
| void | updateSignal () |
| void | userInteraction () |
Public Member Functions | |
| iASlicerImpl (QWidget *parent, const iASlicerMode mode, bool decorations=true, bool magicLensAvailable=true, vtkSmartPointer< vtkTransform > transform=vtkSmartPointer< vtkTransform >()) | |
| Creates a new slicer widget. | |
| virtual | ~iASlicerImpl () |
| void | addImageActor (vtkSmartPointer< vtkImageActor > imgActor) override |
| void | applySettings (QVariantMap const &settings) override |
| Apply the given settings to the slicer. | |
| vtkCamera * | camera () override |
| Access to the slicer's main renderer's camera. | |
| void | enableInteractor (bool b) override |
| void | execute (vtkObject *caller, unsigned long eventId, void *callData) override |
| int | globalAxis (int slicerAxis) override |
| retrieve the global axis that is represented by the given local axis (e.g. for XY:, 0 -> X, 1 -> Y, 2 -> Z; for XZ: 0 -> X, 1 -> Z, ...) | |
| vtkRenderWindowInteractor * | interactor () override |
| Access to the interactor of this slicer's render window. | |
| bool | isInteractorEnabled () const override |
| iASlicerMode | mode () const override |
| Get the slice mode (which axis-aligned slice-plane is used for slicing). | |
| QCursor | mouseCursor () |
| void | removeImageActor (vtkSmartPointer< vtkImageActor > imgActor) override |
| vtkRenderer * | renderer () override |
| Access to the slicer's main renderer. | |
| void | resetCamera () override |
| Resets the slicer's main renderer's camera such that all channels in it are visible. | |
| void | saveSliceMovie (QString const &fileName, int start, int end, int qual, int fps) |
| void | setBackground (QColor color) override |
| Sets the background color of the slicer. | |
| void | setCamera (vtkCamera *camera, bool camOwner=true) override |
| Set the camera for the slicer's main renderer. | |
| void | setDefaultInteractor () override |
| void | setLinkedMdiChild (iAMdiChild *mdiChild) override |
| in case the "linked mdi" feature is used, use this to set the mdi child this slicer is linked to. | |
| void | setMode (const iASlicerMode mode) override |
| Sets the slice mode (which axis-aligned slice-plane to use for slicing). | |
| void | setMouseCursor (QString const &s) |
| void | setPositionMarkerCenter (double x, double y, double z) |
| Set the position of the position marker (in slicer coordinates). | |
| void | setPositionMarkerSize (int size) |
| Set the size of the position marker cube (showing the current position in other views) | |
| void | setResliceAxesOrigin (double x, double y, double z) override |
| void | setRightButtonDragZoomEnabled (bool enabled) |
| void | setScalarBarTF (vtkScalarsToColors *ctf) override |
| void | setShowTooltip (bool isVisible) override |
| Enable/disable the tooltip text. | |
| void | setSlicerRange (uint channelID) |
| call if the dimension of the input in direction of the slice axis has changed. | |
| virtual QVariantMap const & | settings () override |
| retrieve current settings of this slicer | |
| void | showIsolines (bool s) |
| Enable/disable contour lines. | |
| void | showPosition (bool s) |
| int | sliceNumber () const override |
| Get current slice number. | |
| double | slicePosition () const override |
| Get current slice position. | |
| std::pair< double, double > | sliceRange () const override |
| Retrieve minimum and maximum position of slice range. | |
| double | sliceThickness () const override |
| Get thickness of a single slice (typically, the voxel spacing of the dataset being sliced in slice axis direction) | |
| void | updateChannelMappers () override |
| void | setMagicLensEnabled (bool isEnabled) override |
| Magic Lens methods. | |
| void | setMagicLensSize (int newSize) |
| int | magicLensSize () const |
| void | setMagicLensFrameWidth (int newWidth) |
| void | setMagicLensCount (int count) override |
| void | setMagicLensInput (uint id) override |
| uint | magicLensInput () const override |
| void | setMagicLensOpacity (double opacity) override |
| double | magicLensOpacity () const override |
| void | updateMagicLensColors () override |
| void | updateMagicLens () override |
| void | addChannel (uint id, iAChannelData const &chData, bool enable) override |
| management of channels - each channel represents one "layer" | |
| void | removeChannel (uint id) override |
| void | updateChannel (uint id, iAChannelData const &chData) override |
| iAChannelSlicerData * | channel (uint id) override |
| void | setChannelOpacity (uint id, double opacity) override |
| void | enableChannel (uint id, bool enabled) override |
| bool | hasChannel (uint id) const override |
| void | setROIVisible (bool isVisible) override |
| ROI rectangle. | |
| void | updateROI (int const roi[6]) override |
| void | setContours (int numberOfContours, double contourMin, double contourMax) override |
| set contour line parameters. | |
| void | setContours (int numberOfContours, double const *contourValues) override |
Public Member Functions inherited from iASlicer | |
| iASlicer (QWidget *parent) | |
| virtual | ~iASlicer () |
Public Member Functions inherited from iAQVTKWidget | |
| iAQVTKWidget (QWidget *parent=nullptr) | |
| Creates the widget; makes sure its inner vtk render window is set, and sets an appropriate surface format. | |
| bool | event (QEvent *evt) override |
| void | updateAll () |
Static Public Attributes | |
| static constexpr const char | AdjustWindowLevelEnabled [] = "Adjust Window+Level via Mouse Click+Drag" |
| static constexpr const char | BackgroundColor [] = "Background Color" |
| static constexpr const char | LinearInterpolation [] = "Linear Interpolation" |
| static constexpr const char | MagicLensFrameWidth [] = "Magic Lens Frame Width" |
| static constexpr const char | MagicLensSize [] = "Magic Lens Size" |
| static constexpr const char | MaxIsoValue [] = "Maximum Iso Value" |
| static constexpr const char | MinIsoValue [] = "Minimum Iso Value" |
| static constexpr const char | MouseCursor [] = "Mouse Cursor" |
| static constexpr const char | NumberOfIsoLines [] = "Number of Isolines" |
| static constexpr const char | ShowAxesCaption [] = "Show Axes Caption" |
| static constexpr const char | ShowIsoLines [] = "Show Isolines" |
| static constexpr const char | ShowPosition [] = "Show Position" |
| static constexpr const char | ShowTooltip [] = "Show Tooltip" |
| static constexpr const char | ToolTipFontSize [] = "Tooltip Font Size (pt)" |
vtk-based slicer widget. "Channels" (i.e. image layers) are inserted via the addChannel method
| iASlicerImpl::iASlicerImpl | ( | QWidget * | parent, |
| const iASlicerMode | mode, | ||
| bool | decorations = true, | ||
| bool | magicLensAvailable = true, | ||
| vtkSmartPointer< vtkTransform > | transform = vtkSmartPointer<vtkTransform>() ) |
Creates a new slicer widget.
| parent | the parent widget; can be nullptr for no current parent. |
| mode | determines which axis-aligned slice-plane is used for slicing. |
| decorations | whether to show the scalar bar widget, the measure bar and the tooltip. |
| magicLensAvailable | whether a magic lens should be available. |
| transform | if specified, a transform shared between slicers (e.g. for sharing rotation) |
|
virtual |
|
overridevirtual |
management of channels - each channel represents one "layer"
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Apply the given settings to the slicer.
Implements iASlicer.
|
overridevirtual |
Access to the slicer's main renderer's camera.
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
retrieve the global axis that is represented by the given local axis (e.g. for XY:, 0 -> X, 1 -> Y, 2 -> Z; for XZ: 0 -> X, 1 -> Z, ...)
Implements iASlicer.
|
overridevirtual |
Access to the interactor of this slicer's render window.
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
| int iASlicerImpl::magicLensSize | ( | ) | const |
|
overridevirtual |
Get the slice mode (which axis-aligned slice-plane is used for slicing).
Implements iASlicer.
| QCursor iASlicerImpl::mouseCursor | ( | ) |
|
signal |
|
signal |
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Access to the slicer's main renderer.
Implements iASlicer.
|
overridevirtual |
Resets the slicer's main renderer's camera such that all channels in it are visible.
Implements iASlicer.
|
overrideslot |
|
overrideslot |
Save an image of the image viewer native resolution or the current view.
|
slot |
Save an image stack of the current view.
|
overrideslot |
Save a movie of a full slice-through of the specimen from top to bottom.
| void iASlicerImpl::saveSliceMovie | ( | QString const & | fileName, |
| int | start, | ||
| int | end, | ||
| int | qual, | ||
| int | fps ) |
|
slot |
to synchronize angles of all modes between different slicers
|
overridevirtual |
Sets the background color of the slicer.
By default, background color is auto-determined via the slicer mode. If set manually via this method, it will keep the given color indefinitely
| color | the background color part |
Implements iASlicer.
|
overridevirtual |
Set the camera for the slicer's main renderer.
Use this if you want share the camera between multiple views (i.e. synchronize their viewing parameters)
| camera | the new camera to assing |
| camOwner | whether the slicer should assume ownership of the camera. If true, Delete() will be called on it in the destructor |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
set contour line parameters.
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
in case the "linked mdi" feature is used, use this to set the mdi child this slicer is linked to.
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Magic Lens methods.
Implements iASlicer.
| void iASlicerImpl::setMagicLensFrameWidth | ( | int | newWidth | ) |
|
overridevirtual |
Implements iASlicer.
| void iASlicerImpl::setMagicLensSize | ( | int | newSize | ) |
|
overridevirtual |
Sets the slice mode (which axis-aligned slice-plane to use for slicing).
Implements iASlicer.
| void iASlicerImpl::setMouseCursor | ( | QString const & | s | ) |
| void iASlicerImpl::setPositionMarkerCenter | ( | double | x, |
| double | y, | ||
| double | z ) |
Set the position of the position marker (in slicer coordinates).
| void iASlicerImpl::setPositionMarkerSize | ( | int | size | ) |
Set the size of the position marker cube (showing the current position in other views)
|
slot |
Toggle the possibility to move start and end point of the profile.
|
slot |
Sets coordinates for line profile.
|
overridevirtual |
Implements iASlicer.
| void iASlicerImpl::setRightButtonDragZoomEnabled | ( | bool | enabled | ) |
|
overridevirtual |
ROI rectangle.
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Enable/disable the tooltip text.
Implements iASlicer.
|
slot |
|
slot |
|
overrideslot |
|
overrideslot |
|
slot |
Toggle the "raw" profile mode, i.e. whether the profile is shown on top of the slicer image.
| void iASlicerImpl::setSlicerRange | ( | uint | channelID | ) |
call if the dimension of the input in direction of the slice axis has changed.
|
overridevirtual |
retrieve current settings of this slicer
Implements iASlicer.
| void iASlicerImpl::showIsolines | ( | bool | s | ) |
Enable/disable contour lines.
| void iASlicerImpl::showPosition | ( | bool | s | ) |
|
overridevirtual |
Get current slice number.
Implements iASlicer.
|
overridevirtual |
Get current slice position.
Implements iASlicer.
|
overridevirtual |
Retrieve minimum and maximum position of slice range.
Implements iASlicer.
|
signal |
triggered when the slice number range has changed; parameters are new minimum, maximum and current index
|
signal |
triggered when slice was rotated
|
overridevirtual |
Get thickness of a single slice (typically, the voxel spacing of the dataset being sliced in slice axis direction)
Implements iASlicer.
|
overrideslot |
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
overridevirtual |
Implements iASlicer.
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |