source: experimental/distortionNG/distortionNG.h @ 310

Last change on this file since 310 was 310, checked in by Torben Dannhauer, 13 years ago
File size: 930 bytes
Line 
1#pragma once
2
3#include<osg/Referenced>
4#include<osg/Geometry>
5#include<osg/MatrixTransform>
6
7#include<osgGA/GUIEventHandler>
8
9#include<osgViewer/Viewer>
10
11
12
13
14class distortionHandler : public osgGA::GUIEventHandler
15{
16
17public:
18        distortionHandler( osg::Camera* camera )
19    : _highlighter(0), _camera(camera), _highlightColor( osg::Vec4(1.0f, 1.0f, 0.0f, 1.0f) ) {}
20
21    void computeSelectedVertex( osgUtil::LineSegmentIntersector::Intersection& result );
22    bool handle( const osgGA::GUIEventAdapter& ea, osgGA::GUIActionAdapter& aa );
23
24        osg::Geode* createVertexHighlighter();
25
26protected:
27        osg::ref_ptr<osg::Geometry> _highlighter;
28    osg::observer_ptr<osg::Camera> _camera;
29        const osg::Vec4 _highlightColor;
30};
31
32
33
34class distortionNG : public osg::Referenced
35{
36
37public:
38        distortionNG();
39        virtual ~distortionNG();
40
41        static osg::Geometry* createMesh(unsigned int column, unsigned int row);
42};
Note: See TracBrowser for help on using the repository browser.