]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbmaracasvisuDrawAxe3D.h
01998b445d16187533b4b93745372d6ff68429d1
[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
10
11 namespace bbcreaMaracasVisu
12 {
13
14 class /*BBTK_EXPORT*/ DrawAxe3D
15  : 
16    public bbtk::AtomicBlackBox
17 {
18   BBTK_BLACK_BOX_INTERFACE(DrawAxe3D,bbtk::AtomicBlackBox);
19 //==================================================================
20 /// User callback called in the box contructor
21 virtual void bbUserConstructor();
22 /// User callback called in the box copy constructor
23 virtual void bbUserCopyConstructor();
24 /// User callback called in the box destructor
25 virtual void bbUserDestructor();
26 //==================================================================
27   BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
28   BBTK_DECLARE_INPUT(lstPointX,std::vector<double>);
29   BBTK_DECLARE_INPUT(lstPointY,std::vector<double>);
30   BBTK_DECLARE_INPUT(lstPointZ,std::vector<double>);
31   BBTK_DECLARE_INPUT(Colour,std::vector<double>);
32   BBTK_DECLARE_OUTPUT(Out,vtkProp3D *);
33
34 //  BBTK_DECLARE_OUTPUT(Out,double);
35   BBTK_PROCESS(Process);
36   void Process();
37
38   private:
39     bool                        firsttime;
40     vtkPolyData         *mallData;
41         vtkActor                *mvtkactor;
42 };
43
44
45 BBTK_BEGIN_DESCRIBE_BLACK_BOX(DrawAxe3D,bbtk::AtomicBlackBox);
46 BBTK_NAME("DrawAxe3D");
47 BBTK_AUTHOR("eduardo.davila@creatis.insa-lyon.fr");
48 BBTK_DESCRIPTION("Draw a 3D axe in a vtk 3D Viewer");
49 BBTK_CATEGORY("__CATEGORY__");
50   BBTK_INPUT(DrawAxe3D,Renderer,"vtk Renderer 3D universe",vtkRenderer*,"");
51   BBTK_INPUT(DrawAxe3D,lstPointX,"list of point X",std::vector<double>,"");
52   BBTK_INPUT(DrawAxe3D,lstPointY,"list of point Y",std::vector<double>,"");
53   BBTK_INPUT(DrawAxe3D,lstPointZ,"list of point Z",std::vector<double>,"");
54   BBTK_INPUT(DrawAxe3D,Colour,"Color of the line R(0..1) G(0..1) B(0..1) ",std::vector<double>,"colour");
55   BBTK_OUTPUT(DrawAxe3D,Out,"Actor",vtkProp3D*,"");
56 BBTK_END_DESCRIBE_BLACK_BOX(DrawAxe3D);
57 }
58 // EO namespace bbcreaMaracasVisu
59
60 #endif // __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
61