Public Slots | Signals | Public Member Functions | Protected Member Functions | Protected Attributes

DGVImageVTK Class Reference

This class represents the DGV Image Display object using VTK. More...

#include <DGVImageVTK.h>

Collaboration diagram for DGVImageVTK:
Collaboration graph
[legend]

List of all members.

Public Slots

void table ()
 Sets up table of the image data.
void mergedSurfacePlot ()
 Sets up a surface plot of the image data merged with the image data.
void generateVolume ()
 Assigns the image data volume to a volume display.
void generateImage ()
 Assigns the array data to the image.
void scan ()
 Animates the image data volume per slice.
void clip ()
 Clips the image data.
void histogram ()
 Determine and display histogram from image.
bool saveImage ()
 Saves image after asking for the filename, automatically identifying format from extension.
bool saveStack ()
 Saves image with given file prefix after asking for the filename, automatically identifying format from extension.
void refresh ()
 Sets up table of the image data.
void renameData ()
 Renames the image data.
void updateData (int row, int col)
 Updates image values to match table.
void interpolateDisplay ()
 Toggles interpolation.
void meanGreyScale ()
 Sets colour level to mean of the data.
void incrementSlice ()
 Go up in the slices.
void decrementSlice ()
 Go down in the slices.
void viewToXYPlane ()
 Change view to xy-plane.
void viewToZXPlane ()
 Change view to zx-plane.
void viewToZYPlane ()
 Change view to zy-plane.

Signals

void resultAvailable (DGVImageVTK *)
 Send signal that Result is available for showing.
void tableAvailable (DGVTableVTK *tableWidget)
 Send signal that a table is available for showing.
void surfacePlotAvailable (DGVSurfacePlotVTK *plotWidget)
 Send signal that a surface plot is available for showing.
void plotAvailable (DGVPlot *plotWidget)
 Send signal that a plot is available for showing.
void plotAvailable (DGVPlotVTK *plotWidget)
 Send signal that a plot is available for showing.
void volumePlotAvailable (DGVVolumePlotVTK *plotWidget)
 Send signal that a surface plot is available for showing.
void recentFileAvailable (const QString &fileName)
 Send signal that a recent filename is available for saving.

Public Member Functions

 DGVImageVTK (QWidget *parent=0)
 The standard constructor.
 DGVImageVTK (QVector< QMenu * > &menus, QWidget *parent=0)
 The overloaded constructor to take and setup extra (pre-connected) conext menus.
 ~DGVImageVTK ()
 The standard destructor.
void setName (QString filename)
 Set the name of the image.
bool openImage (QString filename)
 Opens image with given filename and stores data internally ready to be displayed.
bool saveImage (QString filename)
 Saves image with given filename, automatically identifying format from extension.
bool openStack (QString filename)
 Opens an image stack with given filename and stores data internally ready to be displayed.
bool saveStack (QString filename)
 Saves images with given file prefix, automatically identifying format from extension.
bool openPNG ()
 Opens image with PNG format with stored filename. Generally, use openImage() member instead unless the format is known.
bool savePNG (const QString filename)
 Saves image with PNG format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openPNGVolume ()
 Opens image stack with PNG format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.
bool savePNGVolume (const QString filename)
 Saves image stack with PNG format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.
bool openJPEG ()
 Opens image with JPEG format with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveJPEG (const QString filename)
 Saves image with JPEG format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openJPEGVolume ()
 Opens image stack with JPEG format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.
bool saveJPEGVolume (const QString filename)
 Saves image stack with JPEG format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.
bool openTIFF ()
 Opens image with TIFF format with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveTIFF (const QString filename)
 Saves image with TIFF format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openTIFFVolume ()
 Opens image stack with TIFF format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.
bool saveTIFFVolume (const QString filename)
 Saves image stack with TIFF format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.
bool openPNM ()
 Opens image with PNM (portable anymap), PBM, PGM and PPM format with stored filename. Generally, use openImage() member instead unless the format is known.
bool savePNM (const QString filename)
 Saves image with PNM (portable anymap), PBM, PGM and PPM format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openPNMVolume ()
 Opens image stack with PNM, PGM etc. format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.
bool savePNMVolume (const QString filename)
 Saves image stack with PNM format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.
bool openBMP ()
 Opens image with Bitmap (BMP) format with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveBMP (const QString filename)
 Saves image with Bitmap (BMP) format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openBMPVolume ()
 Opens image stack with BMP format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.
bool saveBMPVolume (const QString filename)
 Saves image stack with BMP format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.
bool savePS (const QString filename)
 Saves image with Post Script (PS) format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openDICOM ()
 Opens image with DICOM medical format with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveDICOM (const QString filename)
 Saves image as DICOM medical format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openVTI ()
 Opens VTK Image XML (VTI) File with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveVTI (const QString filename)
 Saves image with VTK XML Image (VTI) format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openVTK ()
 Opens VTK Structured Points (VTK) Legacy File with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveVTK (const QString filename)
 Saves image with VTK Structured Points (VTK) Legacy File format with stored filename. Generally, use saveImage() member instead unless the format is known.
bool openTGA ()
 Opens Targa (TGA) image File with stored filename. Generally, use openImage() member instead unless the format is known.
bool saveTGA (const QString filename)
 Saves image with Targa (TGA) format with stored filename. Generally, use saveImage() member instead unless the format is known.
void complexValuedMode (bool complexValues)
 Enable the maintaining of complex values and its display?
bool isComplexValued ()
 Is the image complex valued?
void setData (Array< imageType, 2 > &data)
 Assigns the array data to image. You will need to call generate image after this.
void setData (Array< imageType, 3 > &data)
 Assigns the 3D array data to image. You will need to call generate image after this.
void setData (Array< complex< imageType >, 3 > &data)
 Assigns the complex 3D array data to image. You will need to call generate image after this. Volume display will only show absolute magnitude.
void setData (Array< complex< imageType >, 2 > &data)
 Assigns the array data to image. You will need to call generate image after this.
void setData (vtkImageData *newData)
 Assigns the VTK array data to image. You will need to call generate image after this.
void setDataSize (int rows, int cols)
 Presizes the image data to given size. Useful for when storing results of transforms. Note: Call complexValuedMode if data is going to be complex. Array is initialized in the process.
void SetInput (vtkImageData *newData)
 VTK interface function: Assigns the array data to image. Same as setData() function.
void viewMagnitude ()
void viewImaginaryPart ()
 View the imaginary part of the image data.
void viewRealPart ()
 View the real part of the image data.
void viewPhase ()
 View the phase of the image data.
Array< imageType, 2 > & data ()
 Returns a Blitz++ array containing the image data.
Array< complex< imageType >, 2 > & dataComplex ()
 Returns a Complex Valued Blitz++ array containing the image data.
Array< imageType, 2 > & dataViewing ()
 Returns a Blitz++ array containing the image data currently being display. For complex based images, the relevant part being viewed is returned. If not is complex valued mode this behaves like the data() member.
vtkAlgorithmOutput * GetOutputPort ()
 VTK interface function: Returns the output port of the image data that can be used to pass reference to the data to VTK objects.
vtkImageData * GetOutput ()
 VTK interface function: Returns the output of the image data that can be used to pass the actual data to VTK objects.
bool isVolume ()
 Returns true if image is a volume.
void disableVolumeDisplay (bool disable)
 Disable the use of volumes for 3D image data. Useful if you only want to view slices. Call before generateImage() member.
DGVVolumePlotVTKgetVolume ()
 Returns a volume plot object if the image is a volume. Use isVolume() to check first.
QString strippedName ()
 Returns the stripped (path removed) name of the image.
QString strippedNamePrefix ()
 Returns the stripped (path removed) name of the image with "Image" prefix.
void addToContextMenu (QVector< QMenu * > &menus)
 Adds the menu to the context menu. Connections are assumed to be made before hand.
void setConsole (DGVConsole *newConsole)
 Assigns a console for message output. You should set this before calling data members to ensure messages reach the console (if one is present).
void setVerboseMode (bool verbose)
 Verbose mode for message output.
void alignImages (bool align)
 Rotate images by 90 degrees to compensate for different image indexing.

Protected Member Functions

void createActions ()
 Private Functions.
void createConnections ()
 Creates all the connections for the Qt GUI.
void connectTable (DGVTableVTK *child)
 Connects the spawned tables to any data changes.
void dataToArray ()
 Converts the VTK data to a Blitz array which is stored internally. This is used by the data() function to return the array.
bool sliceToData ()
 Loads the new slice into array (if slice is changed).
void arrayToData ()
 Converts the Blitz array to VTK data which is stored internally. This is used by the setData() function to assign the data.
void checkDataIsManual ()
 Is there image data present by bypassing setData()? If so then tag as image loaded so image can be generated and displayed.
void setupEvents ()
 Executes common events setup code.
void setupViewerFromReader ()
 Executes common code to setup a viewer after a reader has read data from file.
void addContextMenuExtras ()
 Adds extra parts to context menu. Assumes call is always made inside contextMenuEvent().
void contextMenuEvent (QContextMenuEvent *event)
 The context menu setup member.
virtual void timerEvent (QTimerEvent *event)
 The timer events handler.
void printError (QString msg)
 Error message wrapper for console.
void printWarning (QString msg)
 Warning message wrapper for console.
void printInfo (QString msg)
 Info message wrapper for console.

Protected Attributes

QString name
 Name of the Image.
bool loaded
 Loaded Image from file?
bool arrayLoaded
 To avoid loading unnecessarily into Blitz array.
bool imageDataSource
 Source is VTK ImageData?
bool imageDataLoaded
 To avoid loading VTK ImageData unnecessarily.
bool externalData
 Using external data?
bool viewing
 Viewer setup?
bool volume
 3D data is maintained?
bool complexData
 Complex data maintained?
bool consoleAssigned
 Message Console.
bool verboseMode
 Verbose message output mode.
bool enableVolumes
 Enable the use of volume displays in 3D datasets?
bool permuted
 Has the volume been permuted?
int sliceInView
 Slice currently in view.
QMenu * contextMenu
 Context Menu.
QVector< QMenu * > menusToAdd
 Conext Menu's to add.
QAction * tableAct
 Action object for displaying a table of data.
QAction * surfacePlotAct
 Action object for displaying a surface plot of data merged with image data.
QAction * scanAct
 Action for scanning the volume.
QAction * volumeAct
 Action for Generating a volume.
QAction * clipAct
 Action for Clipping image.
QAction * histAct
 Action for Histogram.
QAction * interpolateAct
 Interpolate image?
QAction * meanGreyAct
 Mean grey scale.
QMenu * viewMenu
 Context Menu.
QAction * viewXY
 Change view to zx-plane.
QAction * viewZX
 Change view to zx-plane.
QAction * viewZY
 Change view to zy-plane.
QActionGroup * complexGroup
 Grouping for check boxes.
QAction * absoluteMagnitudeAct
 Show Absolute Magnitude?
QAction * imaginaryPartAct
 Show Imaginary Part?
QAction * realPartAct
 Show Real Part?
QAction * phaseAct
 Show phase/arg?
QAction * saveAct
 Action object for saving an image.
QAction * saveStackAct
 Action object for saving an image stack.
QAction * refreshAct
 Action object for refreshing the display of an image.
QAction * renameAct
 Action for renaming data.
QAction * closeAct
 Closes window.
ImageViewerviewer
 VTK Viewer handler.
vtkImageData * imageData
 Raw VTK Image Data.
vtkImageMagnify * magnify
 Magnification and Interpolation handler.
vtkImagePermute * permute
 Permute axis class.
DGVTableVTKdataTable
 Table form of data.
DGVSurfacePlotVTKsurfacePlot
 Surface plot of data.
DGVVolumePlotVTKvolViewer
 Volume plot of data.
DGVConsoleconsole
 Console for message output.
DGVBlitzArrayCasterVTK< imageTypeBlitz
 For casting Blitz arrays to and from VTK structures.
Array< imageType, 2 > imageArray
 Blitz++ Array Data container. Initially of size zero.
Array< complex< imageType >, 2 > imageComplexArray
 Blitz Complex Array. Will be empty until called. Initially of size zero.
vtkAlgorithmOutput * outputPort
 VTK Output member.
double timerInterval
 Timer Interval for slice viewing (scanning).
int timerId
 Timer Id for slice viewing (scanning).

Detailed Description

This class represents the DGV Image Display object using VTK.

Author:
Shekhar S. Chandra, 2008-2009

The class displays image values using OpenGL via the VTK library. The rendering is encapsulated within a QVTK widget. Controls:

Usage Example:

    DGVImageVTK *image = new DGVImageVTK;

    image->setName(imgName);
    image->setData(newData);
    image->generateImage();
    image->show();

Definition at line 68 of file DGVImageVTK.h.


Constructor & Destructor Documentation

DGVImageVTK::DGVImageVTK ( QWidget *  parent = 0  ) 

The standard constructor.

Create Actions

Setup Connections

Definition at line 60 of file DGVImageVTK.cpp.

DGVImageVTK::DGVImageVTK ( QVector< QMenu * > &  menus,
QWidget *  parent = 0 
)

The overloaded constructor to take and setup extra (pre-connected) conext menus.

Create Actions

Rmemeber to menus to add for later

Setup Connections

Definition at line 90 of file DGVImageVTK.cpp.

DGVImageVTK::~DGVImageVTK (  ) 

The standard destructor.

Crashes when uncommented.

Definition at line 122 of file DGVImageVTK.cpp.


Member Function Documentation

void DGVImageVTK::addContextMenuExtras (  )  [protected]

Adds extra parts to context menu. Assumes call is always made inside contextMenuEvent().

Definition at line 2223 of file DGVImageVTK.cpp.

void DGVImageVTK::addToContextMenu ( QVector< QMenu * > &  menus  ) 

Adds the menu to the context menu. Connections are assumed to be made before hand.

Definition at line 1609 of file DGVImageVTK.cpp.

DGVImageVTK::alignImages ( bool  align  )  [inline]

Rotate images by 90 degrees to compensate for different image indexing.

Definition at line 423 of file DGVImageVTK.h.

void DGVImageVTK::arrayToData (  )  [protected]

Converts the Blitz array to VTK data which is stored internally. This is used by the setData() function to assign the data.

Definition at line 2197 of file DGVImageVTK.cpp.

void DGVImageVTK::checkDataIsManual (  )  [protected]

Is there image data present by bypassing setData()? If so then tag as image loaded so image can be generated and displayed.

Definition at line 2212 of file DGVImageVTK.cpp.

void DGVImageVTK::clip (  )  [slot]

Clips the image data.

Todo:
problem with extents matching between imageData and imageArray

Force array to match

Definition at line 1776 of file DGVImageVTK.cpp.

void DGVImageVTK::complexValuedMode ( bool  complexValues  ) 

Enable the maintaining of complex values and its display?

Definition at line 1433 of file DGVImageVTK.cpp.

void DGVImageVTK::connectTable ( DGVTableVTK child  )  [protected]

Connects the spawned tables to any data changes.

< Necessary to ensure updating of table is correctly done.

Definition at line 2144 of file DGVImageVTK.cpp.

void DGVImageVTK::contextMenuEvent ( QContextMenuEvent *  event  )  [protected]

The context menu setup member.

< Only exists for the duration of the context selection

Extra (preconnected) menus to add.

Setup Data action Table

SPlot

Interp

Change View of Volume

< Only exists for the duration of the context selection

Setup Toggle Options

Abs Display

Imag Display

Real Display

Phase Display

Setup Close action Refresh

Close

Definition at line 2302 of file DGVImageVTK.cpp.

void DGVImageVTK::createActions (  )  [protected]

Private Functions.

Creates SOME actions for menus

Definition at line 2106 of file DGVImageVTK.cpp.

void DGVImageVTK::createConnections (  )  [protected]

Creates all the connections for the Qt GUI.

Definition at line 2136 of file DGVImageVTK.cpp.

Array< imageType, 2 > & DGVImageVTK::data (  ) 

Returns a Blitz++ array containing the image data.

Definition at line 1544 of file DGVImageVTK.cpp.

Array< complex< imageType >, 2 > & DGVImageVTK::dataComplex (  ) 

Returns a Complex Valued Blitz++ array containing the image data.

Definition at line 1553 of file DGVImageVTK.cpp.

void DGVImageVTK::dataToArray (  )  [protected]

Converts the VTK data to a Blitz array which is stored internally. This is used by the data() function to return the array.

Diagnostics

< Load part being viewed

Load into main Blitz Array

Definition at line 2150 of file DGVImageVTK.cpp.

Array< imageType, 2 > & DGVImageVTK::dataViewing (  ) 

Returns a Blitz++ array containing the image data currently being display. For complex based images, the relevant part being viewed is returned. If not is complex valued mode this behaves like the data() member.

Definition at line 1558 of file DGVImageVTK.cpp.

void DGVImageVTK::decrementSlice (  )  [slot]

Go down in the slices.

Definition at line 2037 of file DGVImageVTK.cpp.

DGVImageVTK::disableVolumeDisplay ( bool  disable  )  [inline]

Disable the use of volumes for 3D image data. Useful if you only want to view slices. Call before generateImage() member.

Definition at line 384 of file DGVImageVTK.h.

void DGVImageVTK::generateImage (  )  [slot]

Assigns the array data to the image.

If complex, viewing options are available through the context menu. If a 3D volume, a volume plot will also be generated if enabled. If both complex and a volume, only the absolute magnitude will be shown in the volume plot.

Is data manually entered and not set by setData()?

If 3rd dimension in image then display volume plot too

Definition at line 1634 of file DGVImageVTK.cpp.

void DGVImageVTK::generateVolume (  )  [slot]

Assigns the image data volume to a volume display.

If both complex and a volume, only the absolute magnitude will be shown in the volume plot.

Definition at line 1614 of file DGVImageVTK.cpp.

DGVImageVTK::GetOutput (  )  [inline]

VTK interface function: Returns the output of the image data that can be used to pass the actual data to VTK objects.

Definition at line 371 of file DGVImageVTK.h.

DGVImageVTK::GetOutputPort (  )  [inline]

VTK interface function: Returns the output port of the image data that can be used to pass reference to the data to VTK objects.

Definition at line 365 of file DGVImageVTK.h.

DGVVolumePlotVTK * DGVImageVTK::getVolume (  ) 

Returns a volume plot object if the image is a volume. Use isVolume() to check first.

Definition at line 1592 of file DGVImageVTK.cpp.

void DGVImageVTK::histogram (  )  [slot]

Determine and display histogram from image.

Single component/channel only

Too big, stop

Force loading into array (needed for complex data)

Definition at line 1863 of file DGVImageVTK.cpp.

void DGVImageVTK::incrementSlice (  )  [slot]

Go up in the slices.

Definition at line 2025 of file DGVImageVTK.cpp.

void DGVImageVTK::interpolateDisplay (  )  [slot]

Toggles interpolation.

Todo:
Bug: Interpolate toggled manually

Definition at line 1997 of file DGVImageVTK.cpp.

DGVImageVTK::isComplexValued (  )  [inline]

Is the image complex valued?

Definition at line 280 of file DGVImageVTK.h.

DGVImageVTK::isVolume (  )  [inline]

Returns true if image is a volume.

Definition at line 377 of file DGVImageVTK.h.

void DGVImageVTK::meanGreyScale (  )  [slot]

Sets colour level to mean of the data.

Definition at line 2016 of file DGVImageVTK.cpp.

void DGVImageVTK::mergedSurfacePlot (  )  [slot]

Sets up a surface plot of the image data merged with the image data.

Is data manually entered and not set by setData()?

Todo:
Suface and scalars not aligned properly

<

Todo:
If user does not set parent of image, leak here. Use QObjectCleanupHandler perhaps.

<

Todo:
Leak when surface plot doesn't delete imageData.

Definition at line 1750 of file DGVImageVTK.cpp.

bool DGVImageVTK::openBMP (  ) 

Opens image with Bitmap (BMP) format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 1002 of file DGVImageVTK.cpp.

bool DGVImageVTK::openBMPVolume (  ) 

Opens image stack with BMP format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.

Remove Digits

Add path

Setup volume plot

Definition at line 1045 of file DGVImageVTK.cpp.

bool DGVImageVTK::openDICOM (  ) 

Opens image with DICOM medical format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 1168 of file DGVImageVTK.cpp.

bool DGVImageVTK::openImage ( QString  filename  ) 

Opens image with given filename and stores data internally ready to be displayed.

Currently determines image format by file extension. It calls the relevant function to open the image format of the file.

Definition at line 139 of file DGVImageVTK.cpp.

bool DGVImageVTK::openJPEG (  ) 

Opens image with JPEG format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 478 of file DGVImageVTK.cpp.

bool DGVImageVTK::openJPEGVolume (  ) 

Opens image stack with JPEG format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.

Remove Digits

Add path

Setup volume plot

Definition at line 521 of file DGVImageVTK.cpp.

bool DGVImageVTK::openPNG (  ) 

Opens image with PNG format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 328 of file DGVImageVTK.cpp.

bool DGVImageVTK::openPNGVolume (  ) 

Opens image stack with PNG format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.

Remove Digits

Add path

Setup volume plot

Definition at line 372 of file DGVImageVTK.cpp.

bool DGVImageVTK::openPNM (  ) 

Opens image with PNM (portable anymap), PBM, PGM and PPM format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 776 of file DGVImageVTK.cpp.

bool DGVImageVTK::openPNMVolume (  ) 

Opens image stack with PNM, PGM etc. format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.

Strip name and number

Remove Digits

Add path

Setup volume plot

Remove '.<number>'

Remove '.<number>'

Definition at line 844 of file DGVImageVTK.cpp.

bool DGVImageVTK::openStack ( QString  filename  ) 

Opens an image stack with given filename and stores data internally ready to be displayed.

Currently determines image format by file extension. It calls the relevant function to open the image format of the stack.

Definition at line 267 of file DGVImageVTK.cpp.

bool DGVImageVTK::openTGA (  ) 

Opens Targa (TGA) image File with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 1327 of file DGVImageVTK.cpp.

bool DGVImageVTK::openTIFF (  ) 

Opens image with TIFF format with stored filename. Generally, use openImage() member instead unless the format is known.

Definition at line 627 of file DGVImageVTK.cpp.

bool DGVImageVTK::openTIFFVolume (  ) 

Opens image stack with TIFF format with stored filename. Volume will be read with the start and end values asked. Generally, use openStack() member instead unless the format is known.

Remove Digits

Add path

Setup volume plot

Definition at line 670 of file DGVImageVTK.cpp.

bool DGVImageVTK::openVTI (  ) 

Opens VTK Image XML (VTI) File with stored filename. Generally, use openImage() member instead unless the format is known.

If 3rd image then display volume plot too

Definition at line 1215 of file DGVImageVTK.cpp.

bool DGVImageVTK::openVTK (  ) 

Opens VTK Structured Points (VTK) Legacy File with stored filename. Generally, use openImage() member instead unless the format is known.

Todo:
Check if file provided is readable. CanReadFile is not member of vtkStructuredPointsReader.

If 3rd image then display volume plot too

Definition at line 1271 of file DGVImageVTK.cpp.

void DGVImageVTK::plotAvailable ( DGVPlot plotWidget  )  [signal]

Send signal that a plot is available for showing.

Definition at line 171 of file moc_DGVImageVTK.cpp.

void DGVImageVTK::plotAvailable ( DGVPlotVTK plotWidget  )  [signal]

Send signal that a plot is available for showing.

Definition at line 178 of file moc_DGVImageVTK.cpp.

void DGVImageVTK::printError ( QString  msg  )  [protected]

Error message wrapper for console.

Definition at line 2430 of file DGVImageVTK.cpp.

void DGVImageVTK::printInfo ( QString  msg  )  [protected]

Info message wrapper for console.

Definition at line 2456 of file DGVImageVTK.cpp.

void DGVImageVTK::printWarning ( QString  msg  )  [protected]

Warning message wrapper for console.

Definition at line 2443 of file DGVImageVTK.cpp.

void DGVImageVTK::recentFileAvailable ( const QString &  fileName  )  [signal]

Send signal that a recent filename is available for saving.

Definition at line 192 of file moc_DGVImageVTK.cpp.

void DGVImageVTK::refresh (  )  [slot]

Sets up table of the image data.

Is data manually entered and not set by setData()?

Load from inital source

Definition at line 1925 of file DGVImageVTK.cpp.

void DGVImageVTK::renameData (  )  [slot]

Renames the image data.

Definition at line 1947 of file DGVImageVTK.cpp.

void DGVImageVTK::resultAvailable ( DGVImageVTK _t1  )  [signal]

Send signal that Result is available for showing.

Definition at line 150 of file moc_DGVImageVTK.cpp.

bool DGVImageVTK::saveBMP ( const QString  filename  ) 

Saves image with Bitmap (BMP) format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 1028 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveBMPVolume ( const QString  filename  ) 

Saves image stack with BMP format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.

Remove Digits

Add path

Definition at line 1104 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveDICOM ( const QString  filename  ) 

Saves image as DICOM medical format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 1198 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveImage (  )  [slot]

Saves image after asking for the filename, automatically identifying format from extension.

Currently determines image format by file extension. It calls the relevant function to write the image format of the file. Overloaded member that asks for the filename.

Definition at line 253 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveImage ( QString  filename  ) 

Saves image with given filename, automatically identifying format from extension.

Currently determines image format by file extension. It calls the relevant function to write the image format of the file.

Todo:
Doesn't detect extension properly when using std::strings c_str() function.

Definition at line 179 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveJPEG ( const QString  filename  ) 

Saves image with JPEG format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 504 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveJPEGVolume ( const QString  filename  ) 

Saves image stack with JPEG format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.

Remove Digits

Add path

Definition at line 580 of file DGVImageVTK.cpp.

bool DGVImageVTK::savePNG ( const QString  filename  ) 

Saves image with PNG format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 355 of file DGVImageVTK.cpp.

bool DGVImageVTK::savePNGVolume ( const QString  filename  ) 

Saves image stack with PNG format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.

Remove Digits

Add path

Definition at line 431 of file DGVImageVTK.cpp.

bool DGVImageVTK::savePNM ( const QString  filename  ) 

Saves image with PNM (portable anymap), PBM, PGM and PPM format with stored filename. Generally, use saveImage() member instead unless the format is known.

Definition at line 832 of file DGVImageVTK.cpp.

bool DGVImageVTK::savePNMVolume ( const QString  filename  ) 

Saves image stack with PNM format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.

Remove Digits

Add path

Definition at line 955 of file DGVImageVTK.cpp.

bool DGVImageVTK::savePS ( const QString  filename  ) 

Saves image with Post Script (PS) format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 1151 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveStack (  )  [slot]

Saves image with given file prefix after asking for the filename, automatically identifying format from extension.

Currently determines image format by file extension. It calls the relevant function to write the image format of the file. Overloaded member that asks for the filename.

Definition at line 290 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveStack ( QString  filename  ) 

Saves images with given file prefix, automatically identifying format from extension.

Currently determines image format by file extension. It calls the relevant function to write the image format of the file.

Definition at line 308 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveTGA ( const QString  filename  ) 

Saves image with Targa (TGA) format with stored filename. Generally, use saveImage() member instead unless the format is known.

Definition at line 1369 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveTIFF ( const QString  filename  ) 

Saves image with TIFF format with stored filename. Generally, use saveImage() member instead unless the format is known.

Save Image Data with levels being viewed

Definition at line 653 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveTIFFVolume ( const QString  filename  ) 

Saves image stack with TIFF format with file prefix and pattern provided. Generally, use saveStack() member instead unless the format is known.

Remove Digits

Add path

Definition at line 729 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveVTI ( const QString  filename  ) 

Saves image with VTK XML Image (VTI) format with stored filename. Generally, use saveImage() member instead unless the format is known.

Definition at line 1255 of file DGVImageVTK.cpp.

bool DGVImageVTK::saveVTK ( const QString  filename  ) 

Saves image with VTK Structured Points (VTK) Legacy File format with stored filename. Generally, use saveImage() member instead unless the format is known.

Definition at line 1312 of file DGVImageVTK.cpp.

void DGVImageVTK::scan (  )  [slot]

Animates the image data volume per slice.

Definition at line 1695 of file DGVImageVTK.cpp.

void DGVImageVTK::setConsole ( DGVConsole newConsole  ) 

Assigns a console for message output. You should set this before calling data members to ensure messages reach the console (if one is present).

Definition at line 1535 of file DGVImageVTK.cpp.

void DGVImageVTK::setData ( Array< imageType, 2 > &  data  ) 

Assigns the array data to image. You will need to call generate image after this.

Definition at line 1443 of file DGVImageVTK.cpp.

void DGVImageVTK::setData ( Array< complex< imageType >, 3 > &  data  ) 

Assigns the complex 3D array data to image. You will need to call generate image after this. Volume display will only show absolute magnitude.

Todo:
Bug: Doesn't let the Volume plot (when generated) inherit parent properly. Bypass bug by using the disableVolumeDisplay() member.

Definition at line 1489 of file DGVImageVTK.cpp.

void DGVImageVTK::setData ( vtkImageData *  newData  ) 

Assigns the VTK array data to image. You will need to call generate image after this.

Definition at line 1505 of file DGVImageVTK.cpp.

void DGVImageVTK::setData ( Array< complex< imageType >, 2 > &  data  ) 

Assigns the array data to image. You will need to call generate image after this.

Definition at line 1473 of file DGVImageVTK.cpp.

void DGVImageVTK::setData ( Array< imageType, 3 > &  data  ) 

Assigns the 3D array data to image. You will need to call generate image after this.

Todo:
Bug: Doesn't let the Volume plot (when generated) inherit parent properly. Bypass bug by using the disableVolumeDisplay() member.

Definition at line 1458 of file DGVImageVTK.cpp.

void DGVImageVTK::setDataSize ( int  rows,
int  cols 
)

Presizes the image data to given size. Useful for when storing results of transforms. Note: Call complexValuedMode if data is going to be complex. Array is initialized in the process.

Definition at line 1516 of file DGVImageVTK.cpp.

void DGVImageVTK::SetInput ( vtkImageData *  newData  ) 

VTK interface function: Assigns the array data to image. Same as setData() function.

Definition at line 1530 of file DGVImageVTK.cpp.

void DGVImageVTK::setName ( QString  filename  ) 

Set the name of the image.

Definition at line 133 of file DGVImageVTK.cpp.

void DGVImageVTK::setupEvents (  )  [protected]

Executes common events setup code.

< Redirect event to viewer to allow access of its members

Bind the Up and Down keys

< Forward keyboard events

< Observe this command

Unbind the right mouse button events as Qt uses context menu.

Definition at line 2229 of file DGVImageVTK.cpp.

void DGVImageVTK::setupViewerFromReader (  )  [protected]

Executes common code to setup a viewer after a reader has read data from file.

Definition at line 2260 of file DGVImageVTK.cpp.

DGVImageVTK::setVerboseMode ( bool  verbose  )  [inline]

Verbose mode for message output.

Definition at line 417 of file DGVImageVTK.h.

bool DGVImageVTK::sliceToData (  )  [protected]

Loads the new slice into array (if slice is changed).

Definition at line 2180 of file DGVImageVTK.cpp.

QString DGVImageVTK::strippedName (  ) 

Returns the stripped (path removed) name of the image.

Definition at line 1599 of file DGVImageVTK.cpp.

QString DGVImageVTK::strippedNamePrefix (  ) 

Returns the stripped (path removed) name of the image with "Image" prefix.

Definition at line 1604 of file DGVImageVTK.cpp.

void DGVImageVTK::surfacePlotAvailable ( DGVSurfacePlotVTK plotWidget  )  [signal]

Send signal that a surface plot is available for showing.

Definition at line 164 of file moc_DGVImageVTK.cpp.

void DGVImageVTK::table (  )  [slot]

Sets up table of the image data.

Is data manually entered and not set by setData()?

< Force reload just in case slice changed

<

Todo:
If user does not set parent of image, leak here. Use QObjectCleanupHandler perhaps.

Definition at line 1725 of file DGVImageVTK.cpp.

void DGVImageVTK::tableAvailable ( DGVTableVTK tableWidget  )  [signal]

Send signal that a table is available for showing.

Definition at line 157 of file moc_DGVImageVTK.cpp.

void DGVImageVTK::timerEvent ( QTimerEvent *  event  )  [protected, virtual]

The timer events handler.

Definition at line 2408 of file DGVImageVTK.cpp.

void DGVImageVTK::updateData ( int  row,
int  col 
) [slot]

Updates image values to match table.

< Make array the source now

Definition at line 1957 of file DGVImageVTK.cpp.

DGVImageVTK::viewImaginaryPart (  )  [inline]

View the imaginary part of the image data.

Definition at line 330 of file DGVImageVTK.h.

void DGVImageVTK::viewMagnitude (  )  [inline]

Definition at line 324 of file DGVImageVTK.h.

DGVImageVTK::viewPhase (  )  [inline]

View the phase of the image data.

Definition at line 342 of file DGVImageVTK.h.

DGVImageVTK::viewRealPart (  )  [inline]

View the real part of the image data.

Definition at line 336 of file DGVImageVTK.h.

void DGVImageVTK::viewToXYPlane (  )  [slot]

Change view to xy-plane.

Definition at line 2049 of file DGVImageVTK.cpp.

void DGVImageVTK::viewToZXPlane (  )  [slot]

Change view to zx-plane.

Definition at line 2068 of file DGVImageVTK.cpp.

void DGVImageVTK::viewToZYPlane (  )  [slot]

Change view to zy-plane.

Definition at line 2087 of file DGVImageVTK.cpp.

void DGVImageVTK::volumePlotAvailable ( DGVVolumePlotVTK plotWidget  )  [signal]

Send signal that a surface plot is available for showing.

Definition at line 185 of file moc_DGVImageVTK.cpp.


Member Data Documentation

Show Absolute Magnitude?

View the magnitude of the image data.

Definition at line 605 of file DGVImageVTK.h.

bool DGVImageVTK::arrayLoaded [protected]

To avoid loading unnecessarily into Blitz array.

Definition at line 574 of file DGVImageVTK.h.

For casting Blitz arrays to and from VTK structures.

Definition at line 625 of file DGVImageVTK.h.

QAction* DGVImageVTK::clipAct [protected]

Action for Clipping image.

Definition at line 594 of file DGVImageVTK.h.

QAction* DGVImageVTK::closeAct [protected]

Closes window.

Definition at line 614 of file DGVImageVTK.h.

bool DGVImageVTK::complexData [protected]

Complex data maintained?

Definition at line 580 of file DGVImageVTK.h.

QActionGroup* DGVImageVTK::complexGroup [protected]

Grouping for check boxes.

Definition at line 604 of file DGVImageVTK.h.

Console for message output.

Definition at line 624 of file DGVImageVTK.h.

bool DGVImageVTK::consoleAssigned [protected]

Message Console.

Definition at line 581 of file DGVImageVTK.h.

QMenu* DGVImageVTK::contextMenu [protected]

Context Menu.

Definition at line 588 of file DGVImageVTK.h.

Table form of data.

Definition at line 620 of file DGVImageVTK.h.

bool DGVImageVTK::enableVolumes [protected]

Enable the use of volume displays in 3D datasets?

Definition at line 583 of file DGVImageVTK.h.

bool DGVImageVTK::externalData [protected]

Using external data?

Definition at line 577 of file DGVImageVTK.h.

QAction* DGVImageVTK::histAct [protected]

Action for Histogram.

Definition at line 595 of file DGVImageVTK.h.

Array<imageType,2> DGVImageVTK::imageArray [protected]

Blitz++ Array Data container. Initially of size zero.

Definition at line 626 of file DGVImageVTK.h.

Array< complex<imageType>,2 > DGVImageVTK::imageComplexArray [protected]

Blitz Complex Array. Will be empty until called. Initially of size zero.

Definition at line 627 of file DGVImageVTK.h.

vtkImageData* DGVImageVTK::imageData [protected]

Raw VTK Image Data.

Definition at line 617 of file DGVImageVTK.h.

bool DGVImageVTK::imageDataLoaded [protected]

To avoid loading VTK ImageData unnecessarily.

Definition at line 576 of file DGVImageVTK.h.

bool DGVImageVTK::imageDataSource [protected]

Source is VTK ImageData?

Definition at line 575 of file DGVImageVTK.h.

QAction* DGVImageVTK::imaginaryPartAct [protected]

Show Imaginary Part?

Definition at line 606 of file DGVImageVTK.h.

QAction* DGVImageVTK::interpolateAct [protected]

Interpolate image?

Definition at line 597 of file DGVImageVTK.h.

bool DGVImageVTK::loaded [protected]

Loaded Image from file?

Definition at line 573 of file DGVImageVTK.h.

vtkImageMagnify* DGVImageVTK::magnify [protected]

Magnification and Interpolation handler.

Definition at line 618 of file DGVImageVTK.h.

QAction* DGVImageVTK::meanGreyAct [protected]

Mean grey scale.

Definition at line 598 of file DGVImageVTK.h.

QVector<QMenu*> DGVImageVTK::menusToAdd [protected]

Conext Menu's to add.

Definition at line 589 of file DGVImageVTK.h.

QString DGVImageVTK::name [protected]

Name of the Image.

Definition at line 572 of file DGVImageVTK.h.

vtkAlgorithmOutput* DGVImageVTK::outputPort [protected]

VTK Output member.

Definition at line 629 of file DGVImageVTK.h.

vtkImagePermute* DGVImageVTK::permute [protected]

Permute axis class.

Definition at line 619 of file DGVImageVTK.h.

bool DGVImageVTK::permuted [protected]

Has the volume been permuted?

Definition at line 584 of file DGVImageVTK.h.

QAction* DGVImageVTK::phaseAct [protected]

Show phase/arg?

Definition at line 608 of file DGVImageVTK.h.

QAction* DGVImageVTK::realPartAct [protected]

Show Real Part?

Definition at line 607 of file DGVImageVTK.h.

QAction* DGVImageVTK::refreshAct [protected]

Action object for refreshing the display of an image.

Definition at line 612 of file DGVImageVTK.h.

QAction* DGVImageVTK::renameAct [protected]

Action for renaming data.

Definition at line 613 of file DGVImageVTK.h.

QAction* DGVImageVTK::saveAct [protected]

Action object for saving an image.

Definition at line 610 of file DGVImageVTK.h.

QAction* DGVImageVTK::saveStackAct [protected]

Action object for saving an image stack.

Definition at line 611 of file DGVImageVTK.h.

QAction* DGVImageVTK::scanAct [protected]

Action for scanning the volume.

Definition at line 592 of file DGVImageVTK.h.

int DGVImageVTK::sliceInView [protected]

Slice currently in view.

Definition at line 585 of file DGVImageVTK.h.

Surface plot of data.

Definition at line 621 of file DGVImageVTK.h.

QAction* DGVImageVTK::surfacePlotAct [protected]

Action object for displaying a surface plot of data merged with image data.

Definition at line 591 of file DGVImageVTK.h.

QAction* DGVImageVTK::tableAct [protected]

Action object for displaying a table of data.

Definition at line 590 of file DGVImageVTK.h.

int DGVImageVTK::timerId [protected]

Timer Id for slice viewing (scanning).

Definition at line 632 of file DGVImageVTK.h.

double DGVImageVTK::timerInterval [protected]

Timer Interval for slice viewing (scanning).

Definition at line 631 of file DGVImageVTK.h.

bool DGVImageVTK::verboseMode [protected]

Verbose message output mode.

Definition at line 582 of file DGVImageVTK.h.

VTK Viewer handler.

Definition at line 616 of file DGVImageVTK.h.

bool DGVImageVTK::viewing [protected]

Viewer setup?

Definition at line 578 of file DGVImageVTK.h.

QMenu* DGVImageVTK::viewMenu [protected]

Context Menu.

Definition at line 599 of file DGVImageVTK.h.

QAction* DGVImageVTK::viewXY [protected]

Change view to zx-plane.

Definition at line 600 of file DGVImageVTK.h.

QAction* DGVImageVTK::viewZX [protected]

Change view to zx-plane.

Definition at line 601 of file DGVImageVTK.h.

QAction* DGVImageVTK::viewZY [protected]

Change view to zy-plane.

Definition at line 602 of file DGVImageVTK.h.

bool DGVImageVTK::volume [protected]

3D data is maintained?

Definition at line 579 of file DGVImageVTK.h.

QAction* DGVImageVTK::volumeAct [protected]

Action for Generating a volume.

Definition at line 593 of file DGVImageVTK.h.

Volume plot of data.

Definition at line 622 of file DGVImageVTK.h.


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