Computer Assited Medical Intervention Tool Kit  version 5.0
RigidTransform.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * $CAMITK_LICENCE_BEGIN$
3  *
4  * CamiTK - Computer Assisted Medical Intervention ToolKit
5  * (c) 2001-2021 Univ. Grenoble Alpes, CNRS, Grenoble INP, TIMC, 38000 Grenoble, France
6  *
7  * Visit http://camitk.imag.fr for more information
8  *
9  * This file is part of CamiTK.
10  *
11  * CamiTK is free software: you can redistribute it and/or modify
12  * it under the terms of the GNU Lesser General Public License version 3
13  * only, as published by the Free Software Foundation.
14  *
15  * CamiTK is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU Lesser General Public License version 3 for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * version 3 along with CamiTK. If not, see <http://www.gnu.org/licenses/>.
22  *
23  * $CAMITK_LICENCE_END$
24  ****************************************************************************/
25 
26 #ifndef RIGID_TRANSFORM_H
27 #define RIGID_TRANSFORM_H
28 
29 #include <Action.h>
30 #include <Component.h>
31 
32 #include <vtkTransform.h>
33 #include <vtkTransformFilter.h>
34 #include <vtkSmartPointer.h>
35 
36 #include "ui_RigidTransformDialog.h"
37 
38 
39 using vtkSmartPointerTransformFilter = vtkSmartPointer<vtkTransformFilter>;
40 
53  Q_OBJECT
54 
55 public:
58 
60  virtual ~RigidTransform();
61 
63  virtual QWidget* getWidget() override;
64 
65 public slots:
67  virtual camitk::Action::ApplyStatus apply() override;
68 
69 private slots:
71  void preview();
72 
74  void close();
75 
79  void update(bool forceUpdate = false);
80 
82  void load();
83 
85  void save();
86 
88  void reset();
89 
90 private:
92  void init();
93 
95  vtkSmartPointer<vtkTransform> transformation;
96 
98  QList< vtkSmartPointerTransformFilter > filterList;
99 
101  Ui::RigidTransformDialog myUI;
102 
104  QDialog* dialog;
105 
106 };
107 
108 #endif // RIGID_TRANSFORM_H
camitk::Action::setFamily
void setFamily(QString family)
the name of the family in which this action is associated
Definition: Action.cpp:136
camitk::Component::setPointSet
setPointSet
Definition: sdk/libraries/core/component/Component.h:581
RigidTransform::dialog
QDialog * dialog
the dialog
Definition: RigidTransform.h:104
CAMITK_WARNING
#define CAMITK_WARNING(MSG)
Log for warning verbosity (the most common one) Will appear by default.
Definition: Log.h:266
RigidTransform::update
void update(bool forceUpdate=false)
Slot called when the slider is moved, update the transformation of the selected Component (just for v...
Definition: RigidTransform.cpp:163
RigidTransform::getWidget
virtual QWidget * getWidget() override
this method creates and returns the widget containing the user interface for the action
Definition: RigidTransform.cpp:106
RigidTransform
This action allows you to apply a linear transformation (translation,rotation around axes,...
Definition: RigidTransform.h:52
RigidTransform::RigidTransform
RigidTransform(camitk::ActionExtension *)
the constructor
Definition: RigidTransform.cpp:43
InteractiveGeometryViewer.h
camitk::Action::SUCCESS
@ SUCCESS
everything went according to plan
Definition: Action.h:248
camitk::Action::ABORTED
@ ABORTED
the action was aborted before completion
Definition: Action.h:251
camitk::Action::ApplyStatus
ApplyStatus
Definition: Action.h:247
camitk::Action::setName
void setName(QString name)
Definition: Action.cpp:120
RigidTransform::save
void save()
Slot saving a transformation in a file.
Definition: RigidTransform.cpp:287
InteractiveGeometryViewer
Interactive 3D viewer.
Definition: InteractiveGeometryViewer.h:56
camitk::Action::setComponent
void setComponent(QString component)
the name of the component class that can be used by this action
Definition: Action.cpp:131
camitk::Component::setModified
virtual void setModified(bool modified=true)
set the modified flag
Definition: sdk/libraries/core/component/Component.h:943
camitk::Action::getTargets
const ComponentList getTargets() const
the currently selected and valid (regarding the component property) components, for which this action...
Definition: Action.cpp:166
RigidTransform::close
void close()
Slot called when the button Cancel is clicked, reset the transformation to identity (don't transform)
Definition: RigidTransform.cpp:239
RigidTransform::init
void init()
initialize the dialog
Definition: RigidTransform.cpp:59
Action.h
vtkSmartPointerTransformFilter
vtkSmartPointer< vtkTransformFilter > vtkSmartPointerTransformFilter
Definition: RigidTransform.h:39
camitk::Action::setEmbedded
void setEmbedded(bool isEmbedded)
set the embedded property (an action is embedded by default, unless specified otherwise by explicitly...
Definition: Action.cpp:146
camitk::Component::getDataPort
vtkSmartPointer< vtkPointSet > getDataPort
Definition: sdk/libraries/core/component/Component.h:585
RigidTransform::filterList
QList< vtkSmartPointerTransformFilter > filterList
current transform filters (one per selected object)
Definition: RigidTransform.h:98
camitk::Action::addTag
void addTag(QString tag)
add a tag to the tags list of this action
Definition: Action.cpp:141
Log.h
RigidTransform::myUI
Ui::RigidTransformDialog myUI
the Qt Gui
Definition: RigidTransform.h:101
camitk::Action
Action class is an abstract class that enables you to build a action (generally on a component)....
Definition: Action.h:231
RigidTransform::reset
void reset()
slot called when reset is ckicked, reset the transformation to Identity
Definition: RigidTransform.cpp:129
RigidTransform::transformation
vtkSmartPointer< vtkTransform > transformation
current transformation
Definition: RigidTransform.h:95
camitk::InteractiveViewer::refresh
void refresh(Viewer *whoIsAsking=nullptr) override
Definition: InteractiveViewer.cpp:416
RigidTransform.h
camitk::Action::setDescription
void setDescription(QString description)
the description of the action
Definition: Action.cpp:126
RigidTransform::load
void load()
Slot loading a transformation from a file.
Definition: RigidTransform.cpp:257
camitk::ActionExtension
This class describes what is a generic Action extension. To add a ActionExtension to CamiTK core,...
Definition: ActionExtension.h:80
RigidTransform::apply
virtual camitk::Action::ApplyStatus apply() override
method called when the action is applied
Definition: RigidTransform.cpp:210
camitk::refresh
void refresh()
refresh the display
camitk::InteractiveViewer::getBounds
void getBounds(double *bound)
Compute the bounding box of all displayed Component.
Definition: InteractiveViewer.cpp:1547
RigidTransform::preview
void preview()
Slot called when the button Preview is clicked.
Definition: RigidTransform.cpp:252
camitk::InterfaceGeometry::setDataConnection
virtual void setDataConnection(vtkSmartPointer< vtkAlgorithmOutput >)=0
Set/reset the connection for the InterfaceGeometry internal algorithm.
RigidTransform::~RigidTransform
virtual ~RigidTransform()
Destructor.
Definition: RigidTransform.cpp:99
camitk::Component
A Component represents something that could be included in the explorer view, the interactive 3D view...
Definition: sdk/libraries/core/component/Component.h:302
Application.h
camitk
Definition: Action.cpp:35