open_iA 2024.7
Loading...
Searching...
No Matches
Public Slots | Signals | Public Member Functions | List of all members
iASlicer Class Referenceabstract

vtk-based slicer widget. "Channels" (i.e. image layers) are inserted via the addChannel method More...

#include <iASlicer.h>

Inheritance diagram for iASlicer:
[legend]
Collaboration diagram for iASlicer:
[legend]

Public Slots

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 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

 iASlicer (QWidget *parent)
 
virtual ~iASlicer ()
 
virtual void addImageActor (vtkSmartPointer< vtkImageActor > imgActor)=0
 
virtual void applySettings (QVariantMap const &settings)=0
 Apply the given settings to the slicer.
 
virtual vtkCamera * camera ()=0
 Access to the slicer's main renderer's camera.
 
virtual void enableInteractor (bool enabled)=0
 
virtual void execute (vtkObject *caller, unsigned long eventId, void *callData)=0
 
virtual int globalAxis (int slicerAxis)=0
 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, ...)
 
virtual vtkRenderWindowInteractor * interactor ()=0
 Access to the interactor of this slicer's render window.
 
virtual bool isInteractorEnabled () const =0
 
virtual iASlicerMode mode () const =0
 Get the slice mode (which axis-aligned slice-plane is used for slicing).
 
virtual void removeImageActor (vtkSmartPointer< vtkImageActor > imgActor)=0
 
virtual vtkRenderer * renderer ()=0
 Access to the slicer's main renderer.
 
virtual void resetCamera ()=0
 Resets the slicer's main renderer's camera such that all channels in it are visible.
 
virtual void setBackground (QColor color)=0
 Sets the background color of the slicer.
 
virtual void setCamera (vtkCamera *camera, bool camOwner=true)=0
 Set the camera for the slicer's main renderer.
 
virtual void setDefaultInteractor ()=0
 
virtual void setLinkedMdiChild (iAMdiChild *mdiChild)=0
 in case the "linked mdi" feature is used, use this to set the mdi child this slicer is linked to.
 
virtual void setMode (const iASlicerMode mode)=0
 Sets the slice mode (which axis-aligned slice-plane to use for slicing).
 
virtual void setResliceAxesOrigin (double x, double y, double z)=0
 
virtual void setScalarBarTF (vtkScalarsToColors *ctf)=0
 
virtual void setShowTooltip (bool isVisible)=0
 Enable/disable the tooltip text.
 
virtual QVariantMap const & settings ()=0
 retrieve current settings of this slicer
 
virtual int sliceNumber () const =0
 Get current slice number.
 
virtual double slicePosition () const =0
 Get current slice position.
 
virtual std::pair< double, double > sliceRange () const =0
 Retrieve minimum and maximum position of slice range.
 
virtual double sliceThickness () const =0
 Get thickness of a single slice (typically, the voxel spacing of the dataset being sliced in slice axis direction)
 
virtual void updateChannelMappers ()=0
 
virtual void setMagicLensEnabled (bool isEnabled)=0
 Magic Lens methods.
 
virtual void setMagicLensCount (int count)=0
 
virtual void setMagicLensInput (uint id)=0
 
virtual uint magicLensInput () const =0
 
virtual void setMagicLensOpacity (double opacity)=0
 
virtual double magicLensOpacity () const =0
 
virtual void updateMagicLensColors ()=0
 
virtual void updateMagicLens ()=0
 
virtual void addChannel (uint id, iAChannelData const &chData, bool enable)=0
 management of channels - each channel represents one "layer"
 
virtual void removeChannel (uint id)=0
 
virtual void updateChannel (uint id, iAChannelData const &chData)=0
 
virtual iAChannelSlicerDatachannel (uint id)=0
 
virtual void setChannelOpacity (uint id, double opacity)=0
 
virtual void enableChannel (uint id, bool enabled)=0
 
virtual bool hasChannel (uint id) const =0
 
virtual void setROIVisible (bool isVisible)=0
 ROI rectangle.
 
virtual void updateROI (int const roi[6])=0
 
virtual void setContours (int numberOfContours, double contourMin, double contourMax)=0
 set contour line parameters.
 
virtual void setContours (int numberOfContours, double const *contourValues)=0
 
- 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 ()
 

Detailed Description

vtk-based slicer widget. "Channels" (i.e. image layers) are inserted via the addChannel method

Constructor & Destructor Documentation

◆ iASlicer()

iASlicer::iASlicer ( QWidget * parent)
inline

◆ ~iASlicer()

virtual iASlicer::~iASlicer ( )
inlinevirtual

Member Function Documentation

◆ addChannel()

virtual void iASlicer::addChannel ( uint id,
iAChannelData const & chData,
bool enable )
pure virtual

management of channels - each channel represents one "layer"

Implemented in iASlicerImpl.

◆ addImageActor()

virtual void iASlicer::addImageActor ( vtkSmartPointer< vtkImageActor > imgActor)
pure virtual

Implemented in iASlicerImpl.

◆ altMouseWheel

void iASlicer::altMouseWheel ( int angle)
signal

◆ applySettings()

virtual void iASlicer::applySettings ( QVariantMap const & settings)
pure virtual

Apply the given settings to the slicer.

Implemented in iASlicerImpl.

◆ camera()

virtual vtkCamera * iASlicer::camera ( )
pure virtual

Access to the slicer's main renderer's camera.

Implemented in iASlicerImpl.

◆ channel()

virtual iAChannelSlicerData * iASlicer::channel ( uint id)
pure virtual

Implemented in iASlicerImpl.

◆ clicked

void iASlicer::clicked ( )
signal

◆ ctrlMouseWheel

void iASlicer::ctrlMouseWheel ( int angle)
signal

◆ dblClicked

void iASlicer::dblClicked ( )
signal

◆ enableChannel()

virtual void iASlicer::enableChannel ( uint id,
bool enabled )
pure virtual

Implemented in iASlicerImpl.

◆ enableInteractor()

virtual void iASlicer::enableInteractor ( bool enabled)
pure virtual

Implemented in iASlicerImpl.

◆ execute()

virtual void iASlicer::execute ( vtkObject * caller,
unsigned long eventId,
void * callData )
pure virtual

Implemented in iASlicerImpl.

◆ globalAxis()

virtual int iASlicer::globalAxis ( int slicerAxis)
pure virtual

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, ...)

Implemented in iASlicerImpl.

◆ hasChannel()

virtual bool iASlicer::hasChannel ( uint id) const
pure virtual

Implemented in iASlicerImpl.

◆ interactor()

virtual vtkRenderWindowInteractor * iASlicer::interactor ( )
pure virtual

Access to the interactor of this slicer's render window.

Implemented in iASlicerImpl.

◆ isInteractorEnabled()

virtual bool iASlicer::isInteractorEnabled ( ) const
pure virtual

Implemented in iASlicerImpl.

◆ leftClicked

void iASlicer::leftClicked ( double x,
double y,
double z )
signal

Triggered on mouse left button clicked.

◆ leftDragged

void iASlicer::leftDragged ( double x,
double y,
double z )
signal

Triggered on mouse move with left button clicked.

◆ leftReleased

void iASlicer::leftReleased ( double x,
double y,
double z )
signal

Triggered on mouse button released.

◆ magicLensInput()

virtual uint iASlicer::magicLensInput ( ) const
pure virtual

Implemented in iASlicerImpl.

◆ magicLensOpacity()

virtual double iASlicer::magicLensOpacity ( ) const
pure virtual

Implemented in iASlicerImpl.

◆ magicLensToggled

void iASlicer::magicLensToggled ( bool enabled)
signal

◆ mode()

virtual iASlicerMode iASlicer::mode ( ) const
pure virtual

Get the slice mode (which axis-aligned slice-plane is used for slicing).

Implemented in iASlicerImpl.

◆ mouseMoved

void iASlicer::mouseMoved ( double x,
double y,
double z,
int mode )
signal

Triggered on mouse move, sends x,y,z (world) coordinates and mode of slicer.

◆ removeChannel()

virtual void iASlicer::removeChannel ( uint id)
pure virtual

Implemented in iASlicerImpl.

◆ removeImageActor()

virtual void iASlicer::removeImageActor ( vtkSmartPointer< vtkImageActor > imgActor)
pure virtual

Implemented in iASlicerImpl.

◆ renderer()

virtual vtkRenderer * iASlicer::renderer ( )
pure virtual

Access to the slicer's main renderer.

Implemented in iASlicerImpl.

◆ resetCamera()

virtual void iASlicer::resetCamera ( )
pure virtual

Resets the slicer's main renderer's camera such that all channels in it are visible.

Implemented in iASlicerImpl.

◆ rightClicked

void iASlicer::rightClicked ( double x,
double y,
double z )
signal

Triggered on mouse right button clicked.

◆ rotateSlice

virtual void iASlicer::rotateSlice ( double angle)
pure virtualslot

◆ saveAsImage

virtual void iASlicer::saveAsImage ( )
pure virtualslot

Save an image of the image viewer native resolution or the current view.

◆ saveMovie

virtual void iASlicer::saveMovie ( )
pure virtualslot

Save a movie of a full slice-through of the specimen from top to bottom.

◆ setBackground()

virtual void iASlicer::setBackground ( QColor color)
pure virtual

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; can be reset by setting "invalid" color (i.e., QColor())

Parameters
colorthe color to use as background

Implemented in iASlicerImpl.

◆ setCamera()

virtual void iASlicer::setCamera ( vtkCamera * camera,
bool camOwner = true )
pure virtual

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)

Parameters
camerathe new camera to assing
camOwnerwhether the slicer should assume ownership of the camera. If true, Delete() will be called on it in the destructor

Implemented in iASlicerImpl.

◆ setChannelOpacity()

virtual void iASlicer::setChannelOpacity ( uint id,
double opacity )
pure virtual

Implemented in iASlicerImpl.

◆ setContours() [1/2]

virtual void iASlicer::setContours ( int numberOfContours,
double const * contourValues )
pure virtual

Implemented in iASlicerImpl.

◆ setContours() [2/2]

virtual void iASlicer::setContours ( int numberOfContours,
double contourMin,
double contourMax )
pure virtual

set contour line parameters.

Implemented in iASlicerImpl.

◆ setDefaultInteractor()

virtual void iASlicer::setDefaultInteractor ( )
pure virtual

Implemented in iASlicerImpl.

◆ setLinkedMdiChild()

virtual void iASlicer::setLinkedMdiChild ( iAMdiChild * mdiChild)
pure virtual

in case the "linked mdi" feature is used, use this to set the mdi child this slicer is linked to.

Implemented in iASlicerImpl.

◆ setMagicLensCount()

virtual void iASlicer::setMagicLensCount ( int count)
pure virtual

Implemented in iASlicerImpl.

◆ setMagicLensEnabled()

virtual void iASlicer::setMagicLensEnabled ( bool isEnabled)
pure virtual

Magic Lens methods.

Implemented in iASlicerImpl.

◆ setMagicLensInput()

virtual void iASlicer::setMagicLensInput ( uint id)
pure virtual

Implemented in iASlicerImpl.

◆ setMagicLensOpacity()

virtual void iASlicer::setMagicLensOpacity ( double opacity)
pure virtual

Implemented in iASlicerImpl.

◆ setMode()

virtual void iASlicer::setMode ( const iASlicerMode mode)
pure virtual

Sets the slice mode (which axis-aligned slice-plane to use for slicing).

Implemented in iASlicerImpl.

◆ setResliceAxesOrigin()

virtual void iASlicer::setResliceAxesOrigin ( double x,
double y,
double z )
pure virtual

Implemented in iASlicerImpl.

◆ setROIVisible()

virtual void iASlicer::setROIVisible ( bool isVisible)
pure virtual

ROI rectangle.

Implemented in iASlicerImpl.

◆ setScalarBarTF()

virtual void iASlicer::setScalarBarTF ( vtkScalarsToColors * ctf)
pure virtual

Implemented in iASlicerImpl.

◆ setShowTooltip()

virtual void iASlicer::setShowTooltip ( bool isVisible)
pure virtual

Enable/disable the tooltip text.

Implemented in iASlicerImpl.

◆ setSliceNumber

virtual void iASlicer::setSliceNumber ( int sliceNumber)
pure virtualslot

Set the current slice of the dataset currently sliced.

Parameters
sliceNumbervoxel coordinates along the slices axes determined by the mode which should be set
Deprecated
use setSlicePosition instead!

◆ setSlicePosition

virtual void iASlicer::setSlicePosition ( double slicePos)
pure virtualslot

Set the position to slice.

Parameters
slicePosthe position along the axis determined by the mode where the slicing should happen

◆ settings()

virtual QVariantMap const & iASlicer::settings ( )
pure virtual

retrieve current settings of this slicer

Implemented in iASlicerImpl.

◆ shiftMouseWheel

void iASlicer::shiftMouseWheel ( int angle)
signal

◆ sliceNumber()

virtual int iASlicer::sliceNumber ( ) const
pure virtual

Get current slice number.

Implemented in iASlicerImpl.

◆ sliceNumberChanged

void iASlicer::sliceNumberChanged ( int mode,
int sliceNumber )
signal

triggered when slice number changed.

Parameters
modeslicer mode (=plane)
sliceNumbernumber of the slice that was switched to

◆ slicePosition()

virtual double iASlicer::slicePosition ( ) const
pure virtual

Get current slice position.

Implemented in iASlicerImpl.

◆ sliceRange()

virtual std::pair< double, double > iASlicer::sliceRange ( ) const
pure virtual

Retrieve minimum and maximum position of slice range.

Implemented in iASlicerImpl.

◆ sliceThickness()

virtual double iASlicer::sliceThickness ( ) const
pure virtual

Get thickness of a single slice (typically, the voxel spacing of the dataset being sliced in slice axis direction)

Implemented in iASlicerImpl.

◆ update

virtual void iASlicer::update ( )
pure virtualslot

◆ updateChannel()

virtual void iASlicer::updateChannel ( uint id,
iAChannelData const & chData )
pure virtual

Implemented in iASlicerImpl.

◆ updateChannelMappers()

virtual void iASlicer::updateChannelMappers ( )
pure virtual

Implemented in iASlicerImpl.

◆ updateMagicLens()

virtual void iASlicer::updateMagicLens ( )
pure virtual

Implemented in iASlicerImpl.

◆ updateMagicLensColors()

virtual void iASlicer::updateMagicLensColors ( )
pure virtual

Implemented in iASlicerImpl.

◆ updateROI()

virtual void iASlicer::updateROI ( int const roi[6])
pure virtual

Implemented in iASlicerImpl.

◆ updateSignal

void iASlicer::updateSignal ( )
signal

◆ userInteraction

void iASlicer::userInteraction ( )
signal

The documentation for this class was generated from the following file: