PlusLib  2.9.0
Software library for tracked ultrasound image acquisition, calibration, and processing.
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkPlusUsScanConvert Class Referenceabstract

This is a base class for defining a common scan conversion algorithm interface for all kinds of probes. More...

#include <src/PlusImageProcessing/vtkPlusUsScanConvert.h>

Inheritance diagram for vtkPlusUsScanConvert:
Inheritance graph
[legend]
Collaboration diagram for vtkPlusUsScanConvert:
Collaboration graph
[legend]

Public Types

typedef vtkThreadedImageAlgorithm Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual double GetDistanceBetweenScanlineSamplePointsMm ()=0
 
virtual intGetInputImageExtent ()
 
virtual void GetInputImageExtent (int &, int &, int &, int &, int &, int &)
 
virtual void GetInputImageExtent (int [6])
 
virtual vtkImageData * GetOutput ()=0
 
virtual void GetOutputImageExtent (int [6])
 
virtual intGetOutputImageExtent ()
 
virtual void GetOutputImageExtent (int &, int &, int &, int &, int &, int &)
 
virtual FrameSizeType GetOutputImageSizePixel ()
 
virtual void GetOutputImageSpacing (double [3])
 
virtual double * GetOutputImageSpacing ()
 
virtual void GetOutputImageSpacing (double &, double &, double &)
 
virtual PlusStatus GetScanLineEndPoints (int scanLineIndex, double scanlineStartPoint_OutputImage[4], double scanlineEndPoint_OutputImage[4])=0
 
virtual const char * GetTransducerGeometry ()=0
 
virtual char * GetTransducerName ()
 
virtual int IsA (const char *type)
 
virtual void PrintSelf (ostream &os, vtkIndent indent) VTK_OVERRIDE
 
virtual PlusStatus ReadConfiguration (vtkXMLDataElement *scanConversionElement)
 
virtual void SetInputData (vtkDataObject *input)
 
virtual void SetInputImageExtent (int [6])
 
virtual void SetInputImageExtent (int, int, int, int, int, int)
 
virtual void SetOutputImageSpacing (double, double, double)
 
virtual void SetOutputImageSpacing (double [3])
 
virtual void SetTransducerName (const char *)
 
virtual PlusStatus WriteConfiguration (vtkXMLDataElement *scanConversionElement)
 

Static Public Member Functions

static int IsTypeOf (const char *type)
 
static vtkPlusUsScanConvertSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkPlusUsScanConvert ()
 
virtual ~vtkPlusUsScanConvert ()
 

Protected Attributes

int InputImageExtent [6]
 
int OutputImageExtent [6]
 
double OutputImageSpacing [3]
 
double TransducerCenterPixel [2]
 
bool TransducerCenterPixelSpecified
 
char * TransducerName
 

Detailed Description

This is a base class for defining a common scan conversion algorithm interface for all kinds of probes.

Definition at line 18 of file vtkPlusUsScanConvert.h.

Member Typedef Documentation

◆ Superclass

typedef vtkThreadedImageAlgorithm vtkPlusUsScanConvert::Superclass

Definition at line 21 of file vtkPlusUsScanConvert.h.

Constructor & Destructor Documentation

◆ vtkPlusUsScanConvert()

vtkPlusUsScanConvert::vtkPlusUsScanConvert ( )
protected

Definition at line 15 of file vtkPlusUsScanConvert.cxx.

◆ ~vtkPlusUsScanConvert()

vtkPlusUsScanConvert::~vtkPlusUsScanConvert ( )
protectedvirtual

Definition at line 39 of file vtkPlusUsScanConvert.cxx.

Member Function Documentation

◆ GetClassName()

virtual const char* vtkPlusUsScanConvert::GetClassName ( )
virtual

◆ GetDistanceBetweenScanlineSamplePointsMm()

virtual double vtkPlusUsScanConvert::GetDistanceBetweenScanlineSamplePointsMm ( )
pure virtual

Get the distance between two sample points in the scanline, in mm. Setting of the input image or at least the input image extent is required before calling this method.

Implemented in vtkPlusUsScanConvertCurvilinear, and vtkPlusUsScanConvertLinear.

◆ GetInputImageExtent() [1/3]

virtual int* vtkPlusUsScanConvert::GetInputImageExtent ( )
virtual

◆ GetInputImageExtent() [2/3]

virtual void vtkPlusUsScanConvert::GetInputImageExtent ( int ,
int ,
int ,
int ,
int ,
int  
)
virtual

◆ GetInputImageExtent() [3/3]

virtual void vtkPlusUsScanConvert::GetInputImageExtent ( int  [6])
virtual

◆ GetOutput()

virtual vtkImageData* vtkPlusUsScanConvert::GetOutput ( )
pure virtual

Get the scan converted image. Need to set the inputs and call Update() before calling this method. It is overridden here, because the GetOutput() method in vtkImageAlgorithm is not virtual.

Implemented in vtkPlusUsScanConvertLinear, and vtkPlusUsScanConvertCurvilinear.

◆ GetOutputImageExtent() [1/3]

virtual int* vtkPlusUsScanConvert::GetOutputImageExtent ( )
virtual

◆ GetOutputImageExtent() [2/3]

virtual void vtkPlusUsScanConvert::GetOutputImageExtent ( int ,
int ,
int ,
int ,
int ,
int  
)
virtual

◆ GetOutputImageExtent() [3/3]

virtual void vtkPlusUsScanConvert::GetOutputImageExtent ( int  [6])
virtual

◆ GetOutputImageSizePixel()

FrameSizeType vtkPlusUsScanConvert::GetOutputImageSizePixel ( )
virtual

Get the output image size (in pixel)

Definition at line 132 of file vtkPlusUsScanConvert.cxx.

◆ GetOutputImageSpacing() [1/3]

virtual double* vtkPlusUsScanConvert::GetOutputImageSpacing ( )
virtual

Get the output image spacing (mm/pixel)

◆ GetOutputImageSpacing() [2/3]

virtual void vtkPlusUsScanConvert::GetOutputImageSpacing ( double  [3])
virtual

◆ GetOutputImageSpacing() [3/3]

virtual void vtkPlusUsScanConvert::GetOutputImageSpacing ( double &  ,
double &  ,
double &   
)
virtual

◆ GetScanLineEndPoints()

virtual PlusStatus vtkPlusUsScanConvert::GetScanLineEndPoints ( int  scanLineIndex,
double  scanlineStartPoint_OutputImage[4],
double  scanlineEndPoint_OutputImage[4] 
)
pure virtual

Get the start and end point of the selected scanline. Setting of the input image or at least the input image extent is required before calling this method.

Parameters
scanLineIndexIndex of the scanline. Starts with 0 (the scanline closest to the marked side of the transducer)
scanlineStartPoint_OutputImageStarting point of the scanline (near the transducer surface), in output image coordinate frame (in pixels)
scanlineEndPoint_OutputImageLast point of the scanline (far from the transducer surface), in output image coordinate frame (in pixels)

Implemented in vtkPlusUsScanConvertCurvilinear, and vtkPlusUsScanConvertLinear.

◆ GetTransducerGeometry()

virtual const char* vtkPlusUsScanConvert::GetTransducerGeometry ( )
pure virtual

◆ GetTransducerName()

virtual char* vtkPlusUsScanConvert::GetTransducerName ( )
virtual

Get the transducer model name (e.g., BK_8848-axial)

◆ IsA()

virtual int vtkPlusUsScanConvert::IsA ( const char *  type)
virtual

◆ IsTypeOf()

static int vtkPlusUsScanConvert::IsTypeOf ( const char *  type)
static

◆ PrintSelf()

void vtkPlusUsScanConvert::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
virtual

Reimplemented in vtkPlusUsScanConvertLinear, and vtkPlusUsScanConvertCurvilinear.

Definition at line 44 of file vtkPlusUsScanConvert.cxx.

◆ ReadConfiguration()

PlusStatus vtkPlusUsScanConvert::ReadConfiguration ( vtkXMLDataElement *  scanConversionElement)
virtual

Read configuration from xml data. The scanConversionElement is typically in DataCollction/ImageAcquisition/RfProcessing.

Reimplemented in vtkPlusUsScanConvertLinear, and vtkPlusUsScanConvertCurvilinear.

Definition at line 55 of file vtkPlusUsScanConvert.cxx.

◆ SafeDownCast()

static vtkPlusUsScanConvert* vtkPlusUsScanConvert::SafeDownCast ( vtkObject *  o)
static

◆ SetInputData()

virtual void vtkPlusUsScanConvert::SetInputData ( vtkDataObject *  input)
inlinevirtual

It is overridden here, because the GetOutput() method in vtkImageAlgorithm is not virtual.

Reimplemented in vtkPlusUsScanConvertLinear.

Definition at line 56 of file vtkPlusUsScanConvert.h.

◆ SetInputImageExtent() [1/2]

virtual void vtkPlusUsScanConvert::SetInputImageExtent ( int  ,
int  ,
int  ,
int  ,
int  ,
int   
)
virtual

◆ SetInputImageExtent() [2/2]

virtual void vtkPlusUsScanConvert::SetInputImageExtent ( int  [6])
virtual

◆ SetOutputImageSpacing() [1/2]

virtual void vtkPlusUsScanConvert::SetOutputImageSpacing ( double  [3])
virtual

◆ SetOutputImageSpacing() [2/2]

virtual void vtkPlusUsScanConvert::SetOutputImageSpacing ( double  ,
double  ,
double   
)
virtual

Set the output image spacing (mm/pixel)

◆ SetTransducerName()

virtual void vtkPlusUsScanConvert::SetTransducerName ( const char *  )
virtual

Set the transducer model name (e.g., BK_8848-axial)

◆ WriteConfiguration()

PlusStatus vtkPlusUsScanConvert::WriteConfiguration ( vtkXMLDataElement *  scanConversionElement)
virtual

Write configuration to xml data. The scanConversionElement is typically in DataCollction/ImageAcquisition/RfProcessing.

Reimplemented in vtkPlusUsScanConvertLinear, and vtkPlusUsScanConvertCurvilinear.

Definition at line 106 of file vtkPlusUsScanConvert.cxx.

Member Data Documentation

◆ InputImageExtent

int vtkPlusUsScanConvert::InputImageExtent[6]
protected

Extent of the input non-scanconverted image, in pixels. Only the first four values are used. The values are updated when Update() is called. InputImageExtent[1]-InputImageExtent[0]+1 is the scanline length (number of samples in a scanline) InputImageExtent[3]-InputImageExtent[2]+1 is the number of scanlines

Definition at line 100 of file vtkPlusUsScanConvert.h.

◆ OutputImageExtent

int vtkPlusUsScanConvert::OutputImageExtent[6]
protected

Extent of the output image, in pixels. Only the first four values are used.

Definition at line 77 of file vtkPlusUsScanConvert.h.

◆ OutputImageSpacing

double vtkPlusUsScanConvert::OutputImageSpacing[3]
protected

Spacing of the output image, in mm/pixel. Only the first two values are used.

Definition at line 92 of file vtkPlusUsScanConvert.h.

◆ TransducerCenterPixel

double vtkPlusUsScanConvert::TransducerCenterPixel[2]
protected

Position of the transducer's middle element in the MF coordinate system (in pixels). Usually the first component is the half of the output image size and the second component is close to 0.

Definition at line 83 of file vtkPlusUsScanConvert.h.

◆ TransducerCenterPixelSpecified

bool vtkPlusUsScanConvert::TransducerCenterPixelSpecified
protected

True if the TransducerCenterPixel is specified. If not specified then the default values are used (defaults are specified in subclasses).

Definition at line 89 of file vtkPlusUsScanConvert.h.

◆ TransducerName

char* vtkPlusUsScanConvert::TransducerName
protected

Transducer model name

Definition at line 74 of file vtkPlusUsScanConvert.h.


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