17 #ifndef GEPETTO_GUI_PICK_HANDLER_HH
18 #define GEPETTO_GUI_PICK_HANDLER_HH
22 #include <osg/ref_ptr>
23 #include <osgGA/GUIEventHandler>
26 #include <QModelIndex>
31 class LineSegmentIntersector;
36 class PointIntersector;
45 virtual bool handle(
const osgGA::GUIEventAdapter& ea,
46 osgGA::GUIActionAdapter& aa );
48 void getUsage (osg::ApplicationUsage &usage)
const;
51 typedef osg::ref_ptr<osgUtil::LineSegmentIntersector> LineSegmentIntersector;
53 void computeLineIntersection (osgGA::GUIActionAdapter& aa,
54 const float& x,
const float& y);
57 LineSegmentIntersector computeLineOrPointIntersection (
58 osgGA::GUIActionAdapter& aa,
const float& x,
const float& y);
60 void selectionNodeUnderCursor (osgGA::GUIActionAdapter& aa,
61 const float& x,
const float& y,
int modMask);
63 void centerViewToMouse (osgGA::GUIActionAdapter& aa,
64 const float& x,
const float& y);
66 void setCameraToSelected (osgGA::GUIActionAdapter& aa,
bool zoom);
74 LineSegmentIntersector lineIntersector_;
75 osg::ref_ptr<PointIntersector> pointIntersector_;
80 #endif // GEPETTO_GUI_PICK_HANDLER_HH