From d072e1087c2733c5ac4c1d7e1e1fd07b80779051 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Sat, 10 Jan 2004 21:29:15 +0000 Subject: [PATCH] Added support for controlling the LODScale via '*' and '+' keys in osgProducer::Viewer. --- include/osgProducer/OsgCameraGroup | 3 +++ src/osgProducer/ViewerEventHandler.cpp | 8 ++++++++ 2 files changed, 11 insertions(+) diff --git a/include/osgProducer/OsgCameraGroup b/include/osgProducer/OsgCameraGroup index cb642d97c..e90eb2ced 100644 --- a/include/osgProducer/OsgCameraGroup +++ b/include/osgProducer/OsgCameraGroup @@ -110,6 +110,9 @@ class OSGPRODUCER_EXPORT OsgCameraGroup : public Producer::CameraGroup void setLODScale( float scale ); + float getLODScale() const { return _LODScale; } + + void setFusionDistance( osgUtil::SceneView::FusionDistanceMode mode,float value=1.0f); diff --git a/src/osgProducer/ViewerEventHandler.cpp b/src/osgProducer/ViewerEventHandler.cpp index b5d2bdfc0..dc037e2ea 100644 --- a/src/osgProducer/ViewerEventHandler.cpp +++ b/src/osgProducer/ViewerEventHandler.cpp @@ -830,6 +830,14 @@ bool ViewerEventHandler::handle(const osgGA::GUIEventAdapter& ea,osgGA::GUIActio return true; } + case '*' : + case '/' : + { + if (ea.getKey()=='*') _cg->setLODScale( _cg->getLODScale() * 1.1f); + else _cg->setLODScale( _cg->getLODScale() / 1.1f); + return true; + } + case osgGA::GUIEventAdapter::KEY_Help : case 'h' : {