#include "vtkCommand.h"
#include "vtkRenderer.h"
+#include "vtkProp3D.h"
+#include <vtkRenderWindowInteractor.h>
+
namespace bbcreaVtk
{
+class PointPicker;
//---------------------------------------------
class creaVtkCallbackPointPicker : public vtkCommand
{
+
public:
+ creaVtkCallbackPointPicker();
+
static creaVtkCallbackPointPicker *New() { return new creaVtkCallbackPointPicker; }
void Delete() { delete this; }
virtual void Execute(vtkObject *caller, unsigned long, void*);
+ void setBox(PointPicker *box);
+ private:
+ PointPicker *boxPointPicker;
};
//---------------------------------------------
//---------------------------------------------
+typedef long int longInt;
class bbcreaVtk_EXPORT PointPicker
:
//=====
// 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)
//=====
- BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
- BBTK_DECLARE_OUTPUT(Out,std::vector<double>);
- BBTK_PROCESS(Process);
- void Process();
+ BBTK_DECLARE_INPUT(Active,bool);
+ BBTK_DECLARE_INPUT(TypeEvent,int );
+ BBTK_DECLARE_INPUT(Renderer,vtkRenderer*);
+ BBTK_DECLARE_INPUT(Prop3D,vtkProp3D*);
+ BBTK_DECLARE_INPUT(DefaultPointId,longInt);
+ BBTK_DECLARE_INPUT(DefaultPoint,std::vector<double>);
+ BBTK_DECLARE_OUTPUT(Point,std::vector<double>);
+ BBTK_DECLARE_OUTPUT(Mesh,vtkProp3D*);
+ BBTK_DECLARE_OUTPUT(PointId,longInt);
+ BBTK_DECLARE_OUTPUT(CellId,longInt);
+ BBTK_DECLARE_OUTPUT(Normal,std::vector<double>);
+ BBTK_PROCESS(Process);
+ void Process();
- bool firsttime;
+ bool firsttime;
+ creaVtkCallbackPointPicker *callPicker;
+
//=====
// 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)
//=====
};
BBTK_BEGIN_DESCRIBE_BLACK_BOX(PointPicker,bbtk::AtomicBlackBox);
-BBTK_NAME("PointPicker");
-BBTK_AUTHOR("InfoDev");
-BBTK_DESCRIPTION("No Description.");
-BBTK_CATEGORY("empty");
-BBTK_INPUT(PointPicker,Renderer,"vtk Renderer",vtkRenderer*,"");
-BBTK_OUTPUT(PointPicker,Out,"First output",std::vector<double>,"");
+ BBTK_NAME("PointPicker");
+ BBTK_AUTHOR("InfoDev");
+ BBTK_DESCRIPTION("No Description.");
+ BBTK_CATEGORY("empty");
+
+ BBTK_INPUT(PointPicker,Active,"(true default) true/false",bool,"");
+ BBTK_INPUT(PointPicker,TypeEvent,"(0 default) 0:NOTHING, 1:MouseMoveEvent 2:LeftButtonPressEvent 3:LeftButtonDoubleClickEvent",int,"");
+ BBTK_INPUT(PointPicker,Renderer,"vtk Renderer",vtkRenderer*,"");
+ BBTK_INPUT(PointPicker,Prop3D,"vtkProp3D de reference. If this parameter is empty all actors in the render are used",vtkProp3D*,"");
+ BBTK_INPUT(PointPicker,DefaultPointId,"Default Point Id",longInt,"");
+ BBTK_INPUT(PointPicker,DefaultPoint,"Default Point",std::vector<double>,"");
+
+ BBTK_OUTPUT(PointPicker,Point,"Point [x,y,z])",std::vector<double>,"");
+ BBTK_OUTPUT(PointPicker,Mesh,"Mesh",vtkProp3D*,"");
+ BBTK_OUTPUT(PointPicker,PointId,"Mesh point Id",longInt,"");
+ BBTK_OUTPUT(PointPicker,CellId,"Mesh cell Id",longInt,"");
+ BBTK_OUTPUT(PointPicker,Normal,"Normal [nx,ny,nz]",std::vector<double>,"");
+
BBTK_END_DESCRIBE_BLACK_BOX(PointPicker);
//=====
// 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)