NifTK  16.4.1 - 0798f20
CMIC's Translational Medical Imaging Platform
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
itk::SiemensMammomat_TomosynthesisGeometry< IntensityType > Class Template Reference

Class to calculate the geometry of a GE tomosynthesis machine. More...

Inheritance diagram for itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >:
Inheritance graph
[legend]
Collaboration diagram for itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >:
Collaboration graph
[legend]

Public Types

typedef
SiemensMammomat_TomosynthesisGeometry 
Self
 
typedef ProjectionGeometry
< IntensityType > 
Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef
Superclass::ProjectionSizeType 
ProjectionSizeType
 
typedef
Superclass::ProjectionSpacingType 
ProjectionSpacingType
 
typedef Superclass::VolumeSizeType VolumeSizeType
 
typedef
Superclass::VolumeSpacingType 
VolumeSpacingType
 
typedef
Superclass::EulerAffineTransformType 
EulerAffineTransformType
 
typedef
Superclass::EulerAffineTransformPointerType 
EulerAffineTransformPointerType
 
typedef
Superclass::PerspectiveProjectionTransformType 
PerspectiveProjectionTransformType
 
typedef
Superclass::PerspectiveProjectionTransformPointerType 
PerspectiveProjectionTransformPointerType
 
- Public Types inherited from itk::ProjectionGeometry< IntensityType >
enum  ProjectionSideType { UNDEFINED_SIDE =0, LEFT_SIDE, RIGHT_SIDE }
 
enum  ProjectionViewType { UNDEFINED_VIEW =0, CC_VIEW, MLO_VIEW }
 
typedef ProjectionGeometry Self
 
typedef Object Superclass
 
typedef SmartPointer< SelfPointer
 
typedef SmartPointer< const SelfConstPointer
 
typedef itk::Size< 2 > ProjectionSizeType
 
typedef itk::Vector< double, 2 > ProjectionSpacingType
 
typedef itk::Size< 3 > VolumeSizeType
 
typedef itk::Vector< double, 3 > VolumeSpacingType
 
typedef
itk::EulerAffineTransform
< double, 3, 3 > 
EulerAffineTransformType
 
typedef
EulerAffineTransformType::Pointer 
EulerAffineTransformPointerType
 
typedef
itk::PerspectiveProjectionTransform
< double > 
PerspectiveProjectionTransformType
 
typedef
PerspectiveProjectionTransformType::Pointer 
PerspectiveProjectionTransformPointerType
 

Public Member Functions

virtual const char * GetClassName () const
 
virtual
PerspectiveProjectionTransformPointerType 
GetPerspectiveTransform (int i)
 
virtual
EulerAffineTransformPointerType 
GetAffineTransform (int i)
 
virtual unsigned int GetNumberOfProjections (void)
 Return the number of projections for this geometry. More...
 
- Public Member Functions inherited from itk::ProjectionGeometry< IntensityType >
void SetProjectionSide (ProjectionSideType side)
 Set the projection side. More...
 
void SetProjectionView (ProjectionViewType view)
 Set the projection view. More...
 
virtual void SetRotationInX (double _arg)
 Set a rotation in 'x'. More...
 
virtual void SetRotationInY (double _arg)
 Set a rotation in 'y'. More...
 
virtual void SetRotationInZ (double _arg)
 Set a rotation in 'z'. More...
 
virtual double GetRotationInX ()
 Get a rotation in 'x'. More...
 
virtual double GetRotationInY ()
 Get a rotation in 'y'. More...
 
virtual double GetRotationInZ ()
 Get a rotation in 'z'. More...
 
void SetProjectionSize (const ProjectionSizeType &r)
 Set the projection size. More...
 
void SetProjectionSpacing (const ProjectionSpacingType &s)
 Set the projection spacing. More...
 
void SetVolumeSize (const VolumeSizeType &r)
 Set the volume size. More...
 
void SetVolumeSpacing (const VolumeSpacingType &s)
 Set the volume spacing. More...
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::ProjectionGeometry< IntensityType >
static Pointer New ()
 

Protected Member Functions

 SiemensMammomat_TomosynthesisGeometry ()
 
virtual ~SiemensMammomat_TomosynthesisGeometry ()
 
void PrintSelf (std::ostream &os, Indent indent) const
 
const double * GetAngles (void)
 
double CalcNormalPosition (double alpha)
 Calculate the projection normal position. More...
 
- Protected Member Functions inherited from itk::ProjectionGeometry< IntensityType >
 ProjectionGeometry ()
 
virtual ~ProjectionGeometry ()
 
void PrintSelf (std::ostream &os, Indent indent) const override
 
void Initialise (void)
 Initialise the object and check inputs are defined. More...
 

Protected Attributes

const unsigned int nProjections
 
const double heightOfTable
 
const double heightOfIsoCenterFromTable
 
const double distSourceToIsoCenter
 
const double sizeOfDetectorInX
 
const double sizeOfDetectorInY
 
- Protected Attributes inherited from itk::ProjectionGeometry< IntensityType >
bool m_FlagInitialised
 Flag indicating whether the object has been initialised. More...
 
ProjectionSideType m_FlagSide
 Flag indicating if side is left or right. More...
 
ProjectionViewType m_FlagView
 Flag indicating if view is CC or MLO. More...
 
double m_RotationInX
 Rotation in 'x' to allow reorientation of the volume. More...
 
double m_RotationInY
 Rotation in 'y' to allow reorientation of the volume. More...
 
double m_RotationInZ
 Rotation in 'z' to allow reorientation of the volume. More...
 
VolumeSizeType m_VolumeSize
 A pointer to the 3D volume size. More...
 
VolumeSpacingType m_VolumeSpacing
 A pointer to the 3D volume spacing. More...
 
ProjectionSizeType m_ProjectionSize
 A pointer to the 3D projection size. More...
 
ProjectionSpacingType m_ProjectionSpacing
 A pointer to the 3D projection spacing. More...
 

Detailed Description

template<class IntensityType = float>
class itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >

Class to calculate the geometry of a GE tomosynthesis machine.

Member Typedef Documentation

template<class IntensityType = float>
typedef SmartPointer<const Self> itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::ConstPointer
template<class IntensityType = float>
typedef Superclass::EulerAffineTransformPointerType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::EulerAffineTransformPointerType
template<class IntensityType = float>
typedef Superclass::EulerAffineTransformType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::EulerAffineTransformType
template<class IntensityType = float>
typedef Superclass::PerspectiveProjectionTransformPointerType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::PerspectiveProjectionTransformPointerType
template<class IntensityType = float>
typedef Superclass::PerspectiveProjectionTransformType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::PerspectiveProjectionTransformType
template<class IntensityType = float>
typedef SmartPointer<Self> itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::Pointer
template<class IntensityType = float>
typedef Superclass::ProjectionSizeType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::ProjectionSizeType

Some convenient typedefs.

template<class IntensityType = float>
typedef Superclass::ProjectionSpacingType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::ProjectionSpacingType
template<class IntensityType = float>
typedef SiemensMammomat_TomosynthesisGeometry itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::Self

Standard class typedefs.

template<class IntensityType = float>
typedef ProjectionGeometry<IntensityType> itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::Superclass
template<class IntensityType = float>
typedef Superclass::VolumeSizeType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::VolumeSizeType
template<class IntensityType = float>
typedef Superclass::VolumeSpacingType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::VolumeSpacingType

Constructor & Destructor Documentation

template<class IntensityType = float>
itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::SiemensMammomat_TomosynthesisGeometry ( )
protected
template<class IntensityType = float>
virtual itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::~SiemensMammomat_TomosynthesisGeometry ( )
inlineprotectedvirtual

Member Function Documentation

template<class IntensityType = float>
double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::CalcNormalPosition ( double  alpha)
protected

Calculate the projection normal position.

template<class IntensityType = float>
virtual EulerAffineTransformPointerType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::GetAffineTransform ( int  i)
virtual

Return a pointer to the affine transformation matrix for projection 'i'.

Reimplemented from itk::ProjectionGeometry< IntensityType >.

template<class IntensityType = float>
const double* itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::GetAngles ( void  )
protected
template<class IntensityType = float>
virtual const char* itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::GetClassName ( ) const
virtual

Run-time type information (and related methods).

Reimplemented from itk::ProjectionGeometry< IntensityType >.

template<class IntensityType = float>
virtual unsigned int itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::GetNumberOfProjections ( void  )
inlinevirtual

Return the number of projections for this geometry.

Reimplemented from itk::ProjectionGeometry< IntensityType >.

template<class IntensityType = float>
virtual PerspectiveProjectionTransformPointerType itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::GetPerspectiveTransform ( int  i)
virtual

Return a pointer to the perspective projection matrix for projection 'i'.

Reimplemented from itk::ProjectionGeometry< IntensityType >.

template<class IntensityType = float>
static Pointer itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::New ( )
static

Method for creation through the object factory.

template<class IntensityType = float>
void itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const
protected

Member Data Documentation

template<class IntensityType = float>
const double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::distSourceToIsoCenter
protected
template<class IntensityType = float>
const double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::heightOfIsoCenterFromTable
protected
template<class IntensityType = float>
const double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::heightOfTable
protected
template<class IntensityType = float>
const unsigned int itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::nProjections
protected
template<class IntensityType = float>
const double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::sizeOfDetectorInX
protected
template<class IntensityType = float>
const double itk::SiemensMammomat_TomosynthesisGeometry< IntensityType >::sizeOfDetectorInY
protected

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