IGSTK
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
igstk::ReslicerPlaneSpatialObject Class Reference

This class generates reslicing plane equation. More...

#include <igstkReslicerPlaneSpatialObject.h>

Inheritance diagram for igstk::ReslicerPlaneSpatialObject:
Inheritance graph
[legend]
Collaboration diagram for igstk::ReslicerPlaneSpatialObject:
Collaboration graph
[legend]

Public Types

enum  ReslicingMode { Orthogonal, OffOrthogonal, Oblique }
 Reslicing modes. More...
enum  OrientationType {
  Axial, Sagittal, Coronal, OffAxial,
  OffSagittal, OffCoronal, PlaneOrientationWithZAxesNormal, PlaneOrientationWithXAxesNormal,
  PlaneOrientationWithYAxesNormal
}
 Orthogonal orientation types. More...
typedef SpatialObject ToolSpatialObjectType
typedef
ToolSpatialObjectType::Pointer 
ToolSpatialObjectPointer
typedef
igstk::Transform::VectorType 
VectorType
typedef
igstk::Transform::VersorType 
VersorType

Public Member Functions

 igstkLoadedEventMacro (ToolTipPositionEvent, IGSTKEvent, VectorType)
 igstkLoadedEventMacro (ReslicerPlaneNormalEvent, IGSTKEvent, VectorType)
 igstkLoadedEventMacro (ReslicerPlaneCenterEvent, IGSTKEvent, VectorType)
void RequestSetReslicingMode (ReslicingMode reslicingMode)
 Request the state machine to attempt to set the reslicing mode.
void RequestSetOrientationType (OrientationType orientationType)
 Request the state machine to attempt to set orientation type.
void RequestSetBoundingBoxProviderSpatialObject (const BoundingBoxProviderSpatialObjectType *boundingBoxProviderSpatialObject)
 Actually sets boundingbox provider spatial object.
void RequestSetToolSpatialObject (const ToolSpatialObjectType *toolSpatialObject)
 Request the state machine to attempt to set the tool spatial object.
void RequestSetCursorPosition (const double *point)
 Request the state machine to attempt to set reslicing cursor position.
void RequestGetToolPosition ()
 Request get tool position.
void RequestGetReslicingPlaneParameters ()
 Request get reslicing plane parameters.
void RequestComputeReslicingPlane ()
 Request compute reslicing plane.
OrientationType GetOrientationType () const
 Retrieve current orientation mode.
ReslicingMode GetReslicingMode () const
 Retrieve current reslicing mode.
void RequestUpdateToolTransformWRTImageCoordinateSystem ()
 Request update tool transform WRT reference spatial object coordinate system.
igstk::Transform GetToolTransform () const
 Get tool transform.
VectorType GetToolPosition () const
 fixme: put this into events
bool IsToolSpatialObjectSet ()
 Inquiry if a tool spatial object is set for reslicing.
void SetLogger (LoggerType *logger)
 Connect the Logger for this class.
- Public Member Functions inherited from igstk::SpatialObject
 igstkLoadedObjectEventMacro (BoundingBoxEvent, IGSTKEvent, BoundingBoxType)
void RequestGetBounds ()
void RequestGetBounds () const
- Public Member Functions inherited from igstk::Object
virtual const char * GetNameOfClass () const
void RemoveObserver (unsigned long tag) const

Public Attributes

igstkStandardClassTraitsMacro(ReslicerPlaneSpatialObject,
SpatialObject) public typedef
BoundingBoxProviderSpatialObjectType::ConstPointer 
BoundingBoxProviderSpatialObjectConstPointer
 Macro with standard traits declarations.
- Public Attributes inherited from igstk::SpatialObject
igstkStandardClassTraitsMacro(SpatialObject,
Object) public typedef
SpatialObjectType::BoundingBoxType 
BoundingBoxType
 Macro with standard traits declarations.

Protected Member Functions

LoggerTypeGetLogger () const
 Declarations needed for the Logger.
 ReslicerPlaneSpatialObject (void)
 Constructor.
 ~ReslicerPlaneSpatialObject (void)
 Destructor.
virtual void PrintSelf (std::ostream &os, itk::Indent indent) const
 Print object information.
- Protected Member Functions inherited from igstk::SpatialObject
 SpatialObject (void)
 The constructor of this class is declared protected to enforce the use of SmartPointers syntax when instantiating objects of this class.
 ~SpatialObject (void)
 The destructor should be overriden in derived classes that allocate memory for member variables.
void RequestSetInternalSpatialObject (SpatialObjectType *object)
 Replacement for RequestSetSpatialObject().
SpatialObjectType * GetInternalSpatialObject () const
 Returns the ITK spatial object that is contained inside this IGSTK spatial object.
- Protected Member Functions inherited from igstk::Object
 Object (void)
 Constructor is protected in order to enforce the use of the New() operator.
virtual ~Object (void)
void RegisterObservedObject (const ::igstk::Object *object, unsigned long tag)
 Register observed objects in an internal array so that they can be disconnected upon destruction.
void RemoveFromObservedObjects ()
 Remove observers that this object may have connected to other objects.

Additional Inherited Members

- Static Public Member Functions inherited from igstk::Object
static Pointer New (void)

Detailed Description

This class generates reslicing plane equation.

The computed plane is used by spatial object representation classes such as igstkImageResliceSpatialObjectRepresentation and igstkMeshResliceSpatialObjectRepresentation.

The class provides three modes of reslicing: Orthogonal, OffOrthogonal and Oblique.

In orthogonal mode, three types of orientation are defined: Axial, Coronal and Sagittal. For this mode, the tool tip spatial object provides the reslicing plane position and orientation information is extracted from the bounding box provider spatial object.

For OffOrthogonal mode, the three types of orientation are OffAxial, OffSagittal and OffCoronal. The orientation of the reslicing plane is computed from both, the tracker tool spatial object and the bounding box provider spatial object. The position of the reslice plane is determined from the tracker tool tip position.

For the oblique mode, both orientation and position information of the reslicing plane are obtained from the tracker tool.

Definition at line 63 of file igstkReslicerPlaneSpatialObject.h.

Member Typedef Documentation

Definition at line 78 of file igstkReslicerPlaneSpatialObject.h.

Definition at line 79 of file igstkReslicerPlaneSpatialObject.h.

Definition at line 81 of file igstkReslicerPlaneSpatialObject.h.

Definition at line 82 of file igstkReslicerPlaneSpatialObject.h.

Member Enumeration Documentation

Reslicing modes.

Enumerator:
Orthogonal 
OffOrthogonal 
Oblique 

Definition at line 89 of file igstkReslicerPlaneSpatialObject.h.

Orthogonal orientation types.

Enumerator:
Axial 
Sagittal 
Coronal 
OffAxial 
OffSagittal 
OffCoronal 
PlaneOrientationWithZAxesNormal 
PlaneOrientationWithXAxesNormal 
PlaneOrientationWithYAxesNormal 

Definition at line 97 of file igstkReslicerPlaneSpatialObject.h.

Constructor & Destructor Documentation

igstk::ReslicerPlaneSpatialObject::ReslicerPlaneSpatialObject ( void  )
protected

Constructor.

igstk::ReslicerPlaneSpatialObject::~ReslicerPlaneSpatialObject ( void  )
protected

Destructor.

Member Function Documentation

igstk::ReslicerPlaneSpatialObject::igstkLoadedEventMacro ( ToolTipPositionEvent  ,
IGSTKEvent  ,
VectorType   
)
igstk::ReslicerPlaneSpatialObject::igstkLoadedEventMacro ( ReslicerPlaneNormalEvent  ,
IGSTKEvent  ,
VectorType   
)
igstk::ReslicerPlaneSpatialObject::igstkLoadedEventMacro ( ReslicerPlaneCenterEvent  ,
IGSTKEvent  ,
VectorType   
)
void igstk::ReslicerPlaneSpatialObject::RequestSetReslicingMode ( ReslicingMode  reslicingMode)

Request the state machine to attempt to set the reslicing mode.

void igstk::ReslicerPlaneSpatialObject::RequestSetOrientationType ( OrientationType  orientationType)

Request the state machine to attempt to set orientation type.

void igstk::ReslicerPlaneSpatialObject::RequestSetBoundingBoxProviderSpatialObject ( const BoundingBoxProviderSpatialObjectType *  boundingBoxProviderSpatialObject)

Actually sets boundingbox provider spatial object.

void igstk::ReslicerPlaneSpatialObject::RequestSetToolSpatialObject ( const ToolSpatialObjectType toolSpatialObject)

Request the state machine to attempt to set the tool spatial object.

A tool spatial object is actually optional; althought required for the OffOrthogonal and Oblique reslicing modes.

void igstk::ReslicerPlaneSpatialObject::RequestSetCursorPosition ( const double *  point)

Request the state machine to attempt to set reslicing cursor position.

void igstk::ReslicerPlaneSpatialObject::RequestGetToolPosition ( )

Request get tool position.

void igstk::ReslicerPlaneSpatialObject::RequestGetReslicingPlaneParameters ( )

Request get reslicing plane parameters.

void igstk::ReslicerPlaneSpatialObject::RequestComputeReslicingPlane ( )

Request compute reslicing plane.

OrientationType igstk::ReslicerPlaneSpatialObject::GetOrientationType ( ) const

Retrieve current orientation mode.

ReslicingMode igstk::ReslicerPlaneSpatialObject::GetReslicingMode ( ) const

Retrieve current reslicing mode.

void igstk::ReslicerPlaneSpatialObject::RequestUpdateToolTransformWRTImageCoordinateSystem ( )

Request update tool transform WRT reference spatial object coordinate system.

igstk::Transform igstk::ReslicerPlaneSpatialObject::GetToolTransform ( ) const

Get tool transform.

VectorType igstk::ReslicerPlaneSpatialObject::GetToolPosition ( ) const

fixme: put this into events

bool igstk::ReslicerPlaneSpatialObject::IsToolSpatialObjectSet ( )

Inquiry if a tool spatial object is set for reslicing.

LoggerType* igstk::ReslicerPlaneSpatialObject::GetLogger ( ) const
protected

Declarations needed for the Logger.

Reimplemented from igstk::Object.

void igstk::ReslicerPlaneSpatialObject::SetLogger ( LoggerType logger)

Connect the Logger for this class.

Reimplemented from igstk::Object.

virtual void igstk::ReslicerPlaneSpatialObject::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
protectedvirtual

Print object information.

Reimplemented from igstk::SpatialObject.

Member Data Documentation

igstkStandardClassTraitsMacro ( ReslicerPlaneSpatialObject, SpatialObject ) public typedef BoundingBoxProviderSpatialObjectType::ConstPointer igstk::ReslicerPlaneSpatialObject::BoundingBoxProviderSpatialObjectConstPointer

Macro with standard traits declarations.

Typedefs

Definition at line 69 of file igstkReslicerPlaneSpatialObject.h.


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