]> Creatis software - creaRigidRegistration.git/blob - PackRecalage/src/bbPackRecalageReSlicerBox.h
*** empty log message ***
[creaRigidRegistration.git] / PackRecalage / src / bbPackRecalageReSlicerBox.h
1 #ifndef __bbPackRecalageReSlicerBox_h_INCLUDED__
2 #define __bbPackRecalageReSlicerBox_h_INCLUDED__
3 #include "bbPackRecalage_EXPORT.h"
4 #include "bbtkAtomicBlackBox.h"
5 #include "iostream"
6
7 #include "vtkImageReslice.h" 
8 #include "vtkTransform.h"
9 #include "vtkImageData.h"
10
11 #include "vtkIdentityTransform.h"
12 #include "vtkMatrix4x4.h"
13 #include <vtkImageChangeInformation.h>
14
15 namespace bbPackRecalage
16 {
17
18 class bbPackRecalage_EXPORT ReSlicerBox
19  : 
20    public bbtk::AtomicBlackBox
21 {
22   BBTK_BLACK_BOX_INTERFACE(ReSlicerBox,bbtk::AtomicBlackBox);
23   BBTK_DECLARE_INPUT(In,vtkImageData *);
24   BBTK_DECLARE_INPUT(Origin,std::vector<int>);
25   BBTK_DECLARE_INPUT(Transform,vtkTransform *);
26   BBTK_DECLARE_INPUT(Centered,bool);
27   BBTK_DECLARE_INPUT(Interpolate,bool);
28   BBTK_DECLARE_OUTPUT(Out,vtkImageData *);
29   BBTK_PROCESS(Process);
30   void Process();
31
32   vtkImageChangeInformation* image;
33   vtkImageChangeInformation* imageResult;
34   vtkImageReslice* slicer;
35 };
36
37 BBTK_BEGIN_DESCRIBE_BLACK_BOX(ReSlicerBox,bbtk::AtomicBlackBox);
38 BBTK_NAME("ReSlicerBox");
39 BBTK_AUTHOR("davila@creatis.insa-lyon.com");
40 BBTK_DESCRIPTION("Uses the vtk ReSlicer tool to modify an input image given a transformation filter.");
41 BBTK_CATEGORY("filter");
42 BBTK_INPUT(ReSlicerBox,In,"Image input",vtkImageData *,"");
43 BBTK_INPUT(ReSlicerBox,Origin,"Image Origin(x,y,z)",std::vector<int>,"");
44 BBTK_INPUT(ReSlicerBox,Transform,"Transform input",vtkTransform *,"");
45 BBTK_INPUT(ReSlicerBox,Centered,"Rotations of the image are in the center of the image. DEFAULT = False.",bool,"");
46 BBTK_INPUT(ReSlicerBox,Interpolate,"Linear interpolation On. DEFAULT = False.",bool,"");
47 BBTK_OUTPUT(ReSlicerBox,Out,"Image output",vtkImageData *,"");
48 BBTK_END_DESCRIBE_BLACK_BOX(ReSlicerBox);
49 }
50 // EO namespace bbPackRecalage
51
52 #endif // __bbPackRecalageReSlicerBox_h_INCLUDED__
53