]> Creatis software - creaMaracasVisu.git/blob - bbtk/src/bbcreaMaracasVisuTubeTreeFilter.h
d819ed715c76a9ab70c7a887a4b82c27b7dfec7b
[creaMaracasVisu.git] / bbtk / src / bbcreaMaracasVisuTubeTreeFilter.h
1 //=====
2 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
3 //=====
4 #ifndef __bbcreaMaracasVisuTubeTreeFilter_h_INCLUDED__
5 #define __bbcreaMaracasVisuTubeTreeFilter_h_INCLUDED__
6 #include "bbcreaMaracasVisu_EXPORT.h"
7 #include "bbtkAtomicBlackBox.h"
8 #include "iostream"
9
10
11 #include <vtkProp3D.h>
12 #include <vtkRenderer.h>
13 #include "vtkImageData.h"
14 #include "vtkActor.h"
15 #include "vtkPolyData.h"
16 #include "vtkPolyDataMapper.h"
17 #include "vtkPoints.h"
18 #include "vtkCellArray.h"
19 #include "vtkProperty.h"
20 #include "vtkLinearTransform.h"
21
22
23 namespace bbcreaMaracasVisu
24 {
25
26 class bbcreaMaracasVisu_EXPORT TubeTreeFilter
27  :
28    public bbtk::AtomicBlackBox
29 {
30   BBTK_BLACK_BOX_INTERFACE(TubeTreeFilter,bbtk::AtomicBlackBox);
31 //=====
32 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
33 //=====
34         BBTK_DECLARE_INPUT(Renderer     , vtkRenderer*);
35         BBTK_DECLARE_INPUT(lstIndexs    , std::vector<int>);
36         BBTK_DECLARE_INPUT(lstPointX    , std::vector<double>);
37         BBTK_DECLARE_INPUT(lstPointY    , std::vector<double>);
38         BBTK_DECLARE_INPUT(lstPointZ    , std::vector<double>);
39         BBTK_DECLARE_INPUT(lstRadio     , std::vector<double>);
40         BBTK_DECLARE_INPUT(Colour       , std::vector<double>);
41         BBTK_DECLARE_INPUT(ColourLaw    , int);
42         BBTK_DECLARE_INPUT(Transform    , vtkLinearTransform *);
43         BBTK_DECLARE_INPUT(Opacity      , double );
44         BBTK_DECLARE_INPUT(iTube        , int );
45         BBTK_DECLARE_OUTPUT(OutTube,vtkProp3D *);
46         BBTK_PROCESS(Process);
47   void Process();
48
49   private:
50         std::vector<vtkActor*>          vecVtkActors;
51         void DrawOneTube(int iGeneral,int numPoints, int iTube);
52         void SetGraphicProperties();
53     int oldLstSize;
54
55 //=====
56 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
57 //=====
58 };
59
60 BBTK_BEGIN_DESCRIBE_BLACK_BOX(TubeTreeFilter,bbtk::AtomicBlackBox);
61         BBTK_NAME("TubeTreeFilter");
62         BBTK_AUTHOR("Info-Dev");
63         BBTK_DESCRIPTION("vtk Tube Tree Filter");
64         BBTK_CATEGORY("actor");
65
66         BBTK_INPUT(TubeTreeFilter,Renderer,"Renderer",vtkRenderer*,"");
67         BBTK_INPUT(TubeTreeFilter,lstIndexs,"Indexs",std::vector<int>,"");
68         BBTK_INPUT(TubeTreeFilter,lstPointX,"lstPointX",std::vector<double>,"");
69         BBTK_INPUT(TubeTreeFilter,lstPointY,"lstPointY",std::vector<double>,"");
70         BBTK_INPUT(TubeTreeFilter,lstPointZ,"lstPointZ",std::vector<double>,"");
71         BBTK_INPUT(TubeTreeFilter,lstRadio,"lstRadio",std::vector<double>,"");
72         BBTK_INPUT(TubeTreeFilter,Colour,"Colour",std::vector<double>,"");
73     BBTK_INPUT(TubeTreeFilter,ColourLaw,"ColorLaw 1(default) solid color, 2 color by segment, 3 color for each point",int,"");
74         BBTK_INPUT(TubeTreeFilter,Transform,"vtkTransform", vtkLinearTransform *,"");
75         BBTK_INPUT(TubeTreeFilter,iTube,"iTube",int,"");
76         BBTK_INPUT(TubeTreeFilter,Opacity,"Opacity",double,"");
77         BBTK_OUTPUT(TubeTreeFilter,OutTube,"Tube[iTube]",vtkProp3D *,"");
78
79
80
81 BBTK_END_DESCRIBE_BLACK_BOX(TubeTreeFilter);
82 //=====
83 // Before editing this file, make sure it's a file of your own (i.e.: it wasn't generated from xml description; if so : your modifications will be lost)
84 //=====
85 }
86 // EO namespace bbcreaMaracasVisu
87
88 #endif // __bbcreaMaracasVisuTubeTreeFilter_h_INCLUDED__
89