1 #ifndef __bbPackRecalageReSlicerBox_h_INCLUDED__
2 #define __bbPackRecalageReSlicerBox_h_INCLUDED__
3 #include "bbPackRecalage_EXPORT.h"
4 #include "bbtkAtomicBlackBox.h"
7 #include "vtkImageReslice.h"
8 #include "vtkTransform.h"
9 #include "vtkImageData.h"
11 #include "vtkIdentityTransform.h"
12 #include "vtkMatrix4x4.h"
13 #include <vtkImageChangeInformation.h>
15 namespace bbPackRecalage
18 class bbPackRecalage_EXPORT ReSlicerBox
20 public bbtk::AtomicBlackBox
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);
32 vtkImageChangeInformation* image;
33 vtkImageChangeInformation* imageResult;
34 vtkImageReslice* slicer;
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);
50 // EO namespace bbPackRecalage
52 #endif // __bbPackRecalageReSlicerBox_h_INCLUDED__