]> Creatis software - creaMaracasVisu.git/blobdiff - bbtk/src/bbmaracasvisuDrawAxe3D.h
*** empty log message ***
[creaMaracasVisu.git] / bbtk / src / bbmaracasvisuDrawAxe3D.h
diff --git a/bbtk/src/bbmaracasvisuDrawAxe3D.h b/bbtk/src/bbmaracasvisuDrawAxe3D.h
new file mode 100644 (file)
index 0000000..01998b4
--- /dev/null
@@ -0,0 +1,61 @@
+#ifndef __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
+#define __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
+#include "bbtkAtomicBlackBox.h"
+#include "iostream"
+
+
+#include "vtkRenderer.h"
+#include "vtkPolyData.h"
+
+
+namespace bbcreaMaracasVisu
+{
+
+class /*BBTK_EXPORT*/ DrawAxe3D
+ : 
+   public bbtk::AtomicBlackBox
+{
+  BBTK_BLACK_BOX_INTERFACE(DrawAxe3D,bbtk::AtomicBlackBox);
+//==================================================================
+/// User callback called in the box contructor
+virtual void bbUserConstructor();
+/// User callback called in the box copy constructor
+virtual void bbUserCopyConstructor();
+/// User callback called in the box destructor
+virtual void bbUserDestructor();
+//==================================================================
+  BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
+  BBTK_DECLARE_INPUT(lstPointX,std::vector<double>);
+  BBTK_DECLARE_INPUT(lstPointY,std::vector<double>);
+  BBTK_DECLARE_INPUT(lstPointZ,std::vector<double>);
+  BBTK_DECLARE_INPUT(Colour,std::vector<double>);
+  BBTK_DECLARE_OUTPUT(Out,vtkProp3D *);
+
+//  BBTK_DECLARE_OUTPUT(Out,double);
+  BBTK_PROCESS(Process);
+  void Process();
+
+  private:
+    bool                       firsttime;
+    vtkPolyData                *mallData;
+       vtkActor                *mvtkactor;
+};
+
+
+BBTK_BEGIN_DESCRIBE_BLACK_BOX(DrawAxe3D,bbtk::AtomicBlackBox);
+BBTK_NAME("DrawAxe3D");
+BBTK_AUTHOR("eduardo.davila@creatis.insa-lyon.fr");
+BBTK_DESCRIPTION("Draw a 3D axe in a vtk 3D Viewer");
+BBTK_CATEGORY("__CATEGORY__");
+  BBTK_INPUT(DrawAxe3D,Renderer,"vtk Renderer 3D universe",vtkRenderer*,"");
+  BBTK_INPUT(DrawAxe3D,lstPointX,"list of point X",std::vector<double>,"");
+  BBTK_INPUT(DrawAxe3D,lstPointY,"list of point Y",std::vector<double>,"");
+  BBTK_INPUT(DrawAxe3D,lstPointZ,"list of point Z",std::vector<double>,"");
+  BBTK_INPUT(DrawAxe3D,Colour,"Color of the line R(0..1) G(0..1) B(0..1) ",std::vector<double>,"colour");
+  BBTK_OUTPUT(DrawAxe3D,Out,"Actor",vtkProp3D*,"");
+BBTK_END_DESCRIBE_BLACK_BOX(DrawAxe3D);
+}
+// EO namespace bbcreaMaracasVisu
+
+#endif // __bbcreaMaracasVisuDrawAxe3D_h_INCLUDED__
+