]> Creatis software - creaRigidRegistration.git/blob - PackRecalage/src/bbPackRecalageTransform3D1PointBox.h
Renamed Recalage Boxes
[creaRigidRegistration.git] / PackRecalage / src / bbPackRecalageTransform3D1PointBox.h
1 #ifndef __bbPackRecalageTransform3D1PointBox_h_INCLUDED__
2 #define __bbPackRecalageTransform3D1PointBox_INCLUDED__
3 #include "bbPackRecalage_EXPORT.h"
4 #include "bbtkAtomicBlackBox.h"
5 #include "iostream"
6
7 #include "vtkTransform.h"
8 #include "Transformer3D1Point.h"
9
10 namespace bbPackRecalage
11 {
12
13 class bbPackRecalage_EXPORT Transform3D1PointBox
14  : 
15    public bbtk::AtomicBlackBox
16 {
17   BBTK_BLACK_BOX_INTERFACE(Transform3D1PointBox,bbtk::AtomicBlackBox);
18
19   /*Center Point of the transformation*/
20   BBTK_DECLARE_INPUT(CenterPoint,std::vector<int>);
21
22   /*Scalation to be done in the x axis*/
23   BBTK_DECLARE_INPUT(AngleX,double);
24                 
25   /*Scalation to be done in the y axis*/
26   BBTK_DECLARE_INPUT(AngleY,double);
27
28   /*Scalation to be done in the z axis*/
29   BBTK_DECLARE_INPUT(AngleZ,double);
30
31   /*Scalation to be done in the x axis*/
32   BBTK_DECLARE_INPUT(ScaleX,double);
33                 
34   /*Scalation to be done in the y axis*/
35   BBTK_DECLARE_INPUT(ScaleY,double);
36
37   /*Scalation to be done in the z axis*/
38   BBTK_DECLARE_INPUT(ScaleZ,double);
39
40   /*Resultant vtkTransform*/
41   BBTK_DECLARE_OUTPUT(Out, vtkTransform*);
42
43   /*Class in charge of making the transformations*/
44   Transformer3D1Point *transformer;
45
46   BBTK_PROCESS(Process);
47   void Process();
48 };
49
50 BBTK_BEGIN_DESCRIBE_BLACK_BOX(Transform3D1PointBox,bbtk::AtomicBlackBox);
51 BBTK_NAME("Transform3D1PointBox");
52 BBTK_AUTHOR("jn.trillos44@uniandes.edu.co");
53 BBTK_DESCRIPTION("Recalage3D version 1 (one point for translation, three rotation angles and xyz manual scaling)");
54 BBTK_CATEGORY("filter");
55 BBTK_INPUT(Transform3D1PointBox,CenterPoint,"CenterPoint",std::vector<int>,"");
56 BBTK_INPUT(Transform3D1PointBox,AngleX,"Angle for rotating on X",double,"");
57 BBTK_INPUT(Transform3D1PointBox,AngleY,"Angle for rotating on Y",double,"");
58 BBTK_INPUT(Transform3D1PointBox,AngleZ,"Angle for rotating on Z",double,"");
59 BBTK_INPUT(Transform3D1PointBox,ScaleX,"Scale on X",double,"");
60 BBTK_INPUT(Transform3D1PointBox,ScaleY,"Scale on Y",double,"");
61 BBTK_INPUT(Transform3D1PointBox,ScaleZ,"Scale on Z",double,"");
62 BBTK_OUTPUT(Transform3D1PointBox,Out,"Transformation ",vtkTransform*,"");
63 BBTK_END_DESCRIBE_BLACK_BOX(Transform3D1PointBox);
64 }
65 // EO namespace bbPackRecalage
66
67 #endif // __bbPackRecalageRecalage3DV1_h_INCLUDED__
68