26 #ifndef INTERFACEFRAME_H 27 #define INTERFACEFRAME_H 37 #include <vtkSmartPointer.h> 106 virtual const vtkSmartPointer<vtkTransform>
getTransform()
const = 0;
117 virtual void setTransform(vtkSmartPointer<vtkTransform> transform) = 0;
129 virtual void translate(
double x,
double y,
double z) = 0;
136 virtual void rotate(
double aroundX,
double aroundY,
double aroundZ) = 0;
142 virtual void rotateVTK(
double aroundX,
double aroundY,
double aroundZ) = 0;
219 #endif // INTERFACEFRAME_H virtual void rotate(double aroundX, double aroundY, double aroundZ)=0
Apply rotations relative to the current position in the alphabetical order (X, Y, Z)...
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 ...
virtual void addFrameChild(InterfaceFrame *frame)=0
Add the input frame as a child of the current frame.
virtual const vtkSmartPointer< vtkTransform > getTransformFromFrame(InterfaceFrame *frame) const =0
Compute the transformation from any other frame to the current frame.
virtual void setTransformRotation(double aroundX, double aroundY, double aroundZ)=0
Set the rotation part of the 3D space transformation of the current frame.
virtual void translate(double x, double y, double z)=0
Apply a translation relative to the current position.
Viewer is an abstract viewer.
Definition: Viewer.h:55
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)
Definition: Action.cpp:36
virtual InterfaceFrame * getParentFrame() const =0
Get the parent frame.
virtual void setParentFrame(InterfaceFrame *parent, bool keepTransform=true)=0
Set the parent frame and update or not its transform during the parent transition.
virtual void setFrameVisibility(Viewer *viewer, bool visible)=0
Set the Component Frame visible for a given viewer.
This class describes what are the methods to implement in order to manage a Component position in spa...
Definition: InterfaceFrame.h:64
virtual ~InterfaceFrame()=default
empty virtual destructor, to avoid memory leak
virtual bool getFrameVisibility(Viewer *viewer) const =0
Get the Component Frame visibility for a given viewer.
virtual void setTransformTranslation(double x, double y, double z)=0
Set the translation part of the 3D space transformation of the current frame.
virtual void setTransform(vtkSmartPointer< vtkTransform > transform)=0
Set the current input frame position (according to its parent Frame)
virtual const vtkSmartPointer< vtkTransform > getTransformFromWorld() const =0
Transforms accessors / Modifyers.
virtual vtkSmartPointer< vtkAxesActor > getFrameAxisActor()=0
Gives the 3D representation of the frame (based on xyz arrows)
virtual const vtkSmartPointer< vtkTransform > getTransform() const =0
Get the transformation with respect to the parent frame.
virtual void setFrameName(QString name)=0
Set the Frame Unique identifyer.
virtual void setTransformTranslationVTK(double x, double y, double z)=0
Set the translation part of the 3D space transformation of the current frame.
virtual void setTransformRotationVTK(double aroundX, double aroundY, double aroundZ)=0
Set the rotation part of the 3D space transformation of the current frame.
virtual const QString & getFrameName() const =0
Hierarchy accessors / Modifyers.
virtual void resetTransform()=0
Set the current frame transform to identity.
virtual void removeFrameChild(InterfaceFrame *frame)=0
Remove the input frame as a child of the current frame.