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)
4 #ifndef __bbcreaVtkPointPicker_h_INCLUDED__
5 #define __bbcreaVtkPointPicker_h_INCLUDED__
6 #include "bbcreaVtk_EXPORT.h"
7 #include "bbtkAtomicBlackBox.h"
10 #include "vtkCommand.h"
11 #include "vtkRenderer.h"
12 #include "vtkProp3D.h"
13 #include <vtkRenderWindowInteractor.h>
21 //---------------------------------------------
22 class creaVtkCallbackPointPicker : public vtkCommand
26 creaVtkCallbackPointPicker();
28 static creaVtkCallbackPointPicker *New() { return new creaVtkCallbackPointPicker; }
29 void Delete() { delete this; }
30 virtual void Execute(vtkObject *caller, unsigned long, void*);
31 void setBox(PointPicker *box);
33 PointPicker *boxPointPicker;
38 //---------------------------------------------
39 //---------------------------------------------
40 //---------------------------------------------
42 typedef long int longInt;
44 class bbcreaVtk_EXPORT PointPicker
46 public bbtk::AtomicBlackBox
48 BBTK_BLACK_BOX_INTERFACE(PointPicker,bbtk::AtomicBlackBox);
50 // 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)
52 BBTK_DECLARE_INPUT(Active,bool);
53 BBTK_DECLARE_INPUT(TypeEvent,int );
54 BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
55 BBTK_DECLARE_INPUT(Prop3D,vtkProp3D*);
56 BBTK_DECLARE_INPUT(DefaultPointId,longInt);
57 BBTK_DECLARE_INPUT(DefaultPoint,std::vector<double>);
58 BBTK_DECLARE_OUTPUT(Point,std::vector<double>);
59 BBTK_DECLARE_OUTPUT(Mesh,vtkProp3D*);
60 BBTK_DECLARE_OUTPUT(PointId,longInt);
61 BBTK_DECLARE_OUTPUT(CellId,longInt);
62 BBTK_DECLARE_OUTPUT(Normal,std::vector<double>);
63 BBTK_PROCESS(Process);
67 creaVtkCallbackPointPicker *callPicker;
70 // 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)
74 BBTK_BEGIN_DESCRIBE_BLACK_BOX(PointPicker,bbtk::AtomicBlackBox);
75 BBTK_NAME("PointPicker");
76 BBTK_AUTHOR("InfoDev");
77 BBTK_DESCRIPTION("No Description.");
78 BBTK_CATEGORY("empty");
80 BBTK_INPUT(PointPicker,Active,"(true default) true/false",bool,"");
81 BBTK_INPUT(PointPicker,TypeEvent,"(0 default) 0:NOTHING, 1:MouseMoveEvent 2:LeftButtonPressEvent 3:LeftButtonDoubleClickEvent",int,"");
82 BBTK_INPUT(PointPicker,Renderer,"vtk Renderer",vtkRenderer*,"");
83 BBTK_INPUT(PointPicker,Prop3D,"vtkProp3D de reference. If this parameter is empty all actors in the render are used",vtkProp3D*,"");
84 BBTK_INPUT(PointPicker,DefaultPointId,"Default Point Id",longInt,"");
85 BBTK_INPUT(PointPicker,DefaultPoint,"Default Point",std::vector<double>,"");
87 BBTK_OUTPUT(PointPicker,Point,"Point [x,y,z])",std::vector<double>,"");
88 BBTK_OUTPUT(PointPicker,Mesh,"Mesh",vtkProp3D*,"");
89 BBTK_OUTPUT(PointPicker,PointId,"Mesh point Id",longInt,"");
90 BBTK_OUTPUT(PointPicker,CellId,"Mesh cell Id",longInt,"");
91 BBTK_OUTPUT(PointPicker,Normal,"Normal [nx,ny,nz]",std::vector<double>,"");
93 BBTK_END_DESCRIBE_BLACK_BOX(PointPicker);
95 // 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)
98 // EO namespace bbcreaVtk
100 #endif // __bbcreaVtkPointPicker_h_INCLUDED__