]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbcreaMaracasVisuPlaneDirection.h
9ea9724d7f39dea2965beecf50b2b68a79a6a564
[creaMaracasVisu.git] / bbtk / src / bbcreaMaracasVisuPlaneDirection.h
1 #ifdef _USE_WXWIDGETS_
2 #ifndef __bbcreaMaracasVisuPlaneDirection_h_INCLUDED__
3 #define __bbcreaMaracasVisuPlaneDirection_h_INCLUDED__
4 #include "bbcreaMaracasVisu_EXPORT.h"
5 #include "bbtkWxBlackBox.h"
6
7 #include <vtkRenderer.h>
8 #include <vtkImageData.h>
9
10 #include "PlaneDirectionViewer.h"
11
12 namespace bbcreaMaracasVisu
13 {
14
15 class bbcreaMaracasVisu_EXPORT PlaneDirection
16  : 
17    public bbtk::WxBlackBox
18 {
19   BBTK_BLACK_BOX_INTERFACE(PlaneDirection,bbtk::WxBlackBox);
20
21   BBTK_DECLARE_INPUT(In,vtkImageData*);  
22   BBTK_DECLARE_INPUT(Renderer, vtkRenderer* );
23   BBTK_DECLARE_INPUT(Filename, std::string );
24   BBTK_DECLARE_INPUT( lstPointsX, std::vector<int> );
25   BBTK_DECLARE_INPUT( lstPointsY, std::vector<int> );
26   BBTK_DECLARE_INPUT( lstPointsZ, std::vector<int> );
27   BBTK_DECLARE_INPUT( ArrowSize, int );
28   BBTK_PROCESS(Process);
29   void Process();
30   BBTK_CREATE_WIDGET(CreateWidget);
31   void CreateWidget(wxWindow*);
32
33 private:
34         PlaneDirectionViewer* _planedir;
35         int radio;
36         double colour[3];
37         int opacity;
38 };
39
40 BBTK_BEGIN_DESCRIBE_BLACK_BOX(PlaneDirection,bbtk::WxBlackBox);
41 BBTK_NAME("PlaneDirection");
42 BBTK_AUTHOR("car-prie@uniandes.edu.co");
43 BBTK_DESCRIPTION("Given a list of points and grouping them in triplets, the box calculates the direction of the plane formed by the three points");
44 BBTK_CATEGORY("actor");
45
46 BBTK_INPUT(PlaneDirection,In,"Image data to get the spacing, if not found set to 1 1 1",vtkImageData*,"");
47 BBTK_INPUT(PlaneDirection,Renderer,"Renderer",vtkRenderer*,"");
48 BBTK_INPUT(PlaneDirection,Filename,"Filename to save the points of the plane and the direction",std::string,"");
49
50 BBTK_INPUT(PlaneDirection, lstPointsX, " list of points X ", std::vector<int>, "");
51 BBTK_INPUT(PlaneDirection, lstPointsY, " list of points Y ", std::vector<int>, "");
52 BBTK_INPUT(PlaneDirection, lstPointsZ, " list of points Z ", std::vector<int>, "");
53
54 BBTK_INPUT(PlaneDirection, ArrowSize, "Size of the arrow ", int, "");
55
56 BBTK_END_DESCRIBE_BLACK_BOX(PlaneDirection);
57 }
58 // EO namespace bbcreaMaracasVisu
59
60 #endif // __bbcreaMaracasVisuPlaneDirection_h_INCLUDED__
61 #endif // _USE_WXWIDGETS_
62