]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuDrawAxe3D.h
a96ad4fb24928cda456fda4bcc13e177c7ce2c8f
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuDrawAxe3D.h
1 #ifndef __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
2 #define __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
3 #include "bbtkAtomicBlackBox.h"
4 #include "iostream"
5
6
7 #include "vtkRenderer.h"
8 #include "vtkPolyData.h"
9 #include "vtkPolyDataMapper.h"
10 #include "vtkLinearTransform.h"
11
12 namespace bbcreaMaracasVisu
13 {
14
15 class /*BBTK_EXPORT*/ DrawAxe3D
16  : 
17    public bbtk::AtomicBlackBox
18 {
19   BBTK_BLACK_BOX_INTERFACE(DrawAxe3D,bbtk::AtomicBlackBox);
20   BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
21   BBTK_DECLARE_INPUT(lstPointX,std::vector<double>);
22   BBTK_DECLARE_INPUT(lstPointY,std::vector<double>);
23   BBTK_DECLARE_INPUT(lstPointZ,std::vector<double>);
24   BBTK_DECLARE_INPUT(Colour,std::vector<double>);
25   BBTK_DECLARE_INPUT(Transform, vtkLinearTransform *);
26   BBTK_DECLARE_OUTPUT(Out,vtkProp3D *);
27
28 //  BBTK_DECLARE_OUTPUT(Out,double);
29   BBTK_PROCESS(Process);
30   void Process();
31
32   private:
33     bool                                firsttime;
34     vtkPolyData                 *mallData;
35         vtkActor                        *mvtkactor;
36         vtkPolyDataMapper       *polydatamapper;
37 };
38
39
40 BBTK_BEGIN_DESCRIBE_BLACK_BOX(DrawAxe3D,bbtk::AtomicBlackBox);
41 BBTK_NAME("DrawAxe3D");
42 BBTK_AUTHOR("eduardo.davila@creatis.insa-lyon.fr");
43 BBTK_DESCRIPTION("Draw a 3D axe in a vtk 3D Viewer");
44 BBTK_CATEGORY("__CATEGORY__");
45   BBTK_INPUT(DrawAxe3D,Renderer,"vtk Renderer 3D universe",vtkRenderer*,"");
46   BBTK_INPUT(DrawAxe3D,lstPointX,"list of point X",std::vector<double>,"");
47   BBTK_INPUT(DrawAxe3D,lstPointY,"list of point Y",std::vector<double>,"");
48   BBTK_INPUT(DrawAxe3D,lstPointZ,"list of point Z",std::vector<double>,"");
49   BBTK_INPUT(DrawAxe3D,Colour,"Color of the line R(0..1) G(0..1) B(0..1) ",std::vector<double>,"colour");
50   BBTK_INPUT(DrawAxe3D,Transform,"vtkTransform", vtkLinearTransform *,"");
51   BBTK_OUTPUT(DrawAxe3D,Out,"Actor",vtkProp3D*,"");
52 BBTK_END_DESCRIBE_BLACK_BOX(DrawAxe3D);
53 }
54 // EO namespace bbcreaMaracasVisu
55
56 #endif // __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
57