source: experimental/distortionNG/extViewer.h @ 341

Last change on this file since 341 was 341, checked in by Torben Dannhauer, 12 years ago

intensityBlending is now supported. Code refactored to have a single setup method

File size: 828 bytes
Line 
1#pragma once
2#include<osgViewer/Viewer>
3
4class extViewer : public osgViewer::Viewer
5{
6public:
7        extViewer();
8
9        extViewer(osg::ArgumentParser& arguments);
10
11        extViewer(const osgViewer::Viewer& viewer, const osg::CopyOp& copyop=osg::CopyOp::SHALLOW_COPY);
12
13        virtual ~extViewer();
14
15                /** Convenience method for projection on curved screens using a slave camera rendering scene and a second camera doing distortion correction to present on a nonplaner display.*/
16        void setUpViewForManualDistortion(unsigned int screenNum=0, osg::Image* intensityMap=0, const osg::Matrixd& projectorMatrix = osg::Matrixd());
17
18                void setUpIntensityMapBlending(osg::StateSet* stateset, osg::Image* intensityMap, unsigned int screenNum=0, int rttSceneTextureUnit=0, int intensityMapTextureUnit=1);
19};
Note: See TracBrowser for help on using the repository browser.