This class describes what are the methods to implement in order to manage a Component position in space. More...
#include <InterfaceFrame.h>
Public Member Functions | |
virtual void | addFrameChild (InterfaceFrame *frame)=0 |
Add the input frame as a child of the current frame. More... | |
virtual vtkSmartPointer< vtkAxesActor > | getFrameAxisActor ()=0 |
Gives the 3D representation of the frame (based on xyz arrows) More... | |
virtual bool | getFrameVisibility (QString) const =0 |
Get the Component Frame visibility for a given viewer. More... | |
virtual void | removeFrameChild (InterfaceFrame *frame)=0 |
Remove the input frame as a child of the current frame. More... | |
virtual void | setFrameVisibility (QString, bool)=0 |
Set the Component Frame visible for a given viewer. More... | |
virtual | ~InterfaceFrame ()=default |
empty virtual destructor, to avoid memory leak More... | |
virtual const QString & | getFrameName () const =0 |
Hierarchy accessors / Modifyers. More... | |
virtual void | setFrameName (QString name)=0 |
Set the Frame Unique identifyer. More... | |
virtual InterfaceFrame * | getParentFrame () const =0 |
Get the parent frame. More... | |
virtual void | setParentFrame (InterfaceFrame *parent, bool keepTransform=true)=0 |
Set the parent frame and update or not its transform during the parent transition. More... | |
virtual const QVector< InterfaceFrame * > & | getChildrenFrame () const =0 |
Get the Children Frames from the current Frame in the Frame Hierarchy The Frame hierarchy may not be the same as the Component Hierarchy. More... | |
virtual const vtkSmartPointer< vtkTransform > | getTransformFromWorld () const =0 |
Transforms accessors / Modifyers. More... | |
virtual const vtkSmartPointer< vtkTransform > | getTransform () const =0 |
Get the transformation with respect to the parent frame. More... | |
virtual const vtkSmartPointer< vtkTransform > | getTransformFromFrame (InterfaceFrame *frame) const =0 |
Compute the transformation from any other frame to the current frame. More... | |
virtual void | setTransform (vtkSmartPointer< vtkTransform > transform)=0 |
Set the current input frame position (according to its parent Frame) More... | |
virtual void | resetTransform ()=0 |
Set the current frame transform to identity. More... | |
virtual void | translate (double x, double y, double z)=0 |
Apply a translation relative to the current position. More... | |
virtual void | rotate (double aroundX, double aroundY, double aroundZ)=0 |
Apply rotations relative to the current position in the alphabetical order (X, Y, Z). More... | |
virtual void | rotateVTK (double aroundX, double aroundY, double aroundZ)=0 |
Apply a rotation relative to the current position, using the VTK rotation order (Z, X, Y) More... | |
virtual void | setTransformTranslation (double x, double y, double z)=0 |
Set the translation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformTranslationVTK (double x, double y, double z)=0 |
Set the translation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformRotation (double aroundX, double aroundY, double aroundZ)=0 |
Set the rotation part of the 3D space transformation of the current frame. More... | |
virtual void | setTransformRotationVTK (double aroundX, double aroundY, double aroundZ)=0 |
Set the rotation part of the 3D space transformation of the current frame. More... | |
This class describes what are the methods to implement in order to manage a Component position in space.
The Frame hierarchy is inspired from IGSTK hierarchy:
For hierachy display convenience, each Frame also knows its children frames.
Ecah Component has a Frame, and each Frame belongs to only one Component. However, the Frame hierarchy may be different from the Component hierarchy (InterfaceNode).
|
virtualdefault |
empty virtual destructor, to avoid memory leak
|
pure virtual |
Add the input frame as a child of the current frame.
frame | The child frame of the current one. |
Implemented in camitk::Frame.
|
pure virtual |
Get the Children Frames from the current Frame in the Frame Hierarchy The Frame hierarchy may not be the same as the Component Hierarchy.
Implemented in camitk::Component, and camitk::Frame.
Referenced by FrameExplorer::add(), and FrameExplorer::getNewItem().
|
pure virtual |
Gives the 3D representation of the frame (based on xyz arrows)
Implemented in camitk::Frame.
Referenced by ShowFrame::event(), ShowFrame::getWidget(), and camitk::InteractiveViewer::refresh().
|
pure virtual |
Hierarchy accessors / Modifyers.
Get the Frame Unique identifyer (can be set by user)
Implemented in camitk::Frame, and camitk::Component.
Referenced by FrameExplorer::add(), FrameExplorer::getNewItem(), and camitk::Frame::getParentFrame().
|
pure virtual |
Get the Component Frame visibility for a given viewer.
Implemented in camitk::Frame.
Referenced by ShowFrame::getQAction(), ShowFrame::getWidget(), and camitk::InteractiveViewer::refresh().
|
pure virtual |
Get the parent frame.
Implemented in camitk::Frame.
Referenced by FrameExplorer::add(), ReorientImage::process(), and ChangeParent::updateComboBox().
|
pure virtual |
Get the transformation with respect to the parent frame.
Implemented in camitk::Component, and camitk::Frame.
|
pure virtual |
Compute the transformation from any other frame to the current frame.
Implemented in camitk::Component, and camitk::Frame.
|
pure virtual |
Transforms accessors / Modifyers.
Get a the transformation with respect to the world frame
Implemented in camitk::Component, and camitk::Frame.
|
pure virtual |
Remove the input frame as a child of the current frame.
frame | the input frame to remove from the current frame's children list |
Implemented in camitk::Frame.
Referenced by camitk::Frame::initAttributes().
|
pure virtual |
Set the current frame transform to identity.
In other words, the current frame and its parent share the same 3D location.
Implemented in camitk::ArbitrarySingleImageComponent, camitk::Frame, and camitk::SingleImageComponent.
|
pure virtual |
Apply rotations relative to the current position in the alphabetical order (X, Y, Z).
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
|
pure virtual |
Apply a rotation relative to the current position, using the VTK rotation order (Z, X, Y)
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
Referenced by FrameEditor::rotate().
|
pure virtual |
Set the Frame Unique identifyer.
Implemented in camitk::Frame.
|
pure virtual |
Set the Component Frame visible for a given viewer.
Implemented in camitk::Frame.
Referenced by ShowFrame::event(), ShowFrame::getWidget(), and ReorientImage::process().
|
pure virtual |
Set the parent frame and update or not its transform during the parent transition.
parent | the new parent frame of current interface frame |
keepTransform | if true keeps the local transform from parent. The current interface frame may move from world coordinates as its local transform is now expressed relatively to the new parent. If false, change the transform from parent to keep the global (world) transform the same as the previous one. |
Implemented in camitk::Frame, and camitk::Component.
Referenced by camitk::Frame::initAttributes().
|
pure virtual |
Set the current input frame position (according to its parent Frame)
transform | The 3D transform of the current frame to its parent. |
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
Referenced by ReorientImage::process(), and FrameEditor::setTransformation().
|
pure virtual |
Set the rotation part of the 3D space transformation of the current frame.
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
|
pure virtual |
Set the rotation part of the 3D space transformation of the current frame.
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
Referenced by FrameEditor::setRotation().
|
pure virtual |
Set the translation part of the 3D space transformation of the current frame.
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
|
pure virtual |
Set the translation part of the 3D space transformation of the current frame.
This method uses the VTK rotation order (Z, X, Y).
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
Referenced by FrameEditor::setTranslation().
|
pure virtual |
Apply a translation relative to the current position.
Implemented in camitk::ArbitrarySingleImageComponent, camitk::SingleImageComponent, and camitk::Frame.
Referenced by FrameEditor::translate().