Encapsulates common logic for handling coordinate reference system calls on objects with CoordinateSystems. More...
#include <igstkCoordinateSystemDelegator.h>
Public Types | |
typedef igstk::CoordinateSystem | CoordinateSystemType |
Typedef for coordinate system. | |
Public Member Functions | |
igstkStandardClassTraitsMacro (CoordinateSystemDelegator, Object) template< class TParentPointer > void RequestSetTransformAndParent(const Transform &transformToParent | |
Macro with standard traits declarations. | |
void | RequestDetachFromParent () |
Detach from its parents. | |
template<class TTarget > | |
void | RequestComputeTransformTo (const TTarget &target) |
Tries to compute the transformation from this coordinate system to another coordinate system. | |
bool | IsCoordinateSystem (const CoordinateSystemType *) const |
Allows another object to verify which coordinate system an object owns. | |
void | PrintSelf (std::ostream &os, itk::Indent indent) const |
Print out object information. | |
void | SetName (const char *name) |
Set/Get the name of the coordinate system. | |
void | SetName (const std::string &name) |
const char * | GetName () const |
Protected Member Functions | |
CoordinateSystemDelegator () | |
~CoordinateSystemDelegator () |
Encapsulates common logic for handling coordinate reference system calls on objects with CoordinateSystems.
Most of the functionality is delegated to CoordinateSystem. This class is intended to be used inside classes like SpatialObject and View. This class delegates much of the core coordinate system connectivity and transformation work to the CoordinateSystem class.
The following diagram illustrates the state machine of the CoordinateSystemDelegator class
"CoordinateSystemDelegator State Machine Diagram"
"CoordinateSystemDelegator State Machine Diagram"Definition at line 47 of file igstkCoordinateSystemDelegator.h.
Typedef for coordinate system.
Definition at line 131 of file igstkCoordinateSystemDelegator.h.
igstk::CoordinateSystemDelegator::CoordinateSystemDelegator | ( | ) | [protected] |
igstk::CoordinateSystemDelegator::~CoordinateSystemDelegator | ( | ) | [protected] |
igstk::CoordinateSystemDelegator::igstkStandardClassTraitsMacro | ( | CoordinateSystemDelegator | , | |
Object | ||||
) | const |
Macro with standard traits declarations.
This method implements the construction of a coordinate system graph by defining the parent of this object and the Transforms defining their relative position and orientation
void igstk::CoordinateSystemDelegator::RequestDetachFromParent | ( | ) | [inline] |
Detach from its parents.
Definition at line 94 of file igstkCoordinateSystemDelegator.h.
void igstk::CoordinateSystemDelegator::RequestComputeTransformTo | ( | const TTarget & | target | ) | [inline] |
Tries to compute the transformation from this coordinate system to another coordinate system.
This method is templated on the input and should allow computation of a transform to another object that internally has a CoordinateSystem.
Three types of events may be generated by this call: CoordinateSystemTransformToEvent CoordinateSystemTransformToNullTargetEvent CoordinateSystemTransformToDisconnectedEvent
First get the coordinate system from the target object.
Handle the response with event observers
Definition at line 111 of file igstkCoordinateSystemDelegator.h.
bool igstk::CoordinateSystemDelegator::IsCoordinateSystem | ( | const CoordinateSystemType * | ) | const |
Allows another object to verify which coordinate system an object owns.
This does not check that the coordinate systems are equivalent, but whether the instances of the coordinate systems are identical.
void igstk::CoordinateSystemDelegator::PrintSelf | ( | std::ostream & | os, | |
itk::Indent | indent | |||
) | const [virtual] |
Print out object information.
Reimplemented from igstk::Object.
void igstk::CoordinateSystemDelegator::SetName | ( | const char * | name | ) |
Set/Get the name of the coordinate system.
void igstk::CoordinateSystemDelegator::SetName | ( | const std::string & | name | ) |
const char* igstk::CoordinateSystemDelegator::GetName | ( | ) | const |