#ifndef PICKINGVISITOR_H #define PICKINGVISITOR_H #include #include #include "Visitor.h" class PickingVisitor: public Visitor { glm::vec2 point_; glm::mat4 modelview_; std::vector nodes_; public: PickingVisitor(glm::vec2 coordinates); std::vector picked() { return nodes_; } // Elements of Scene void visit(Scene& n); void visit(Node& n); void visit(Group& n); void visit(Switch& n); void visit(Animation& n); void visit(Primitive& n); void visit(Surface& n); void visit(ImageSurface&){} void visit(MediaSurface&){} void visit(FrameBufferSurface&){} void visit(LineStrip&){} void visit(LineSquare&); void visit(LineCircle& n); void visit(Mesh&){} }; #endif // PICKINGVISITOR_H