Added support for Scale1DDragger, Scale2DDragger and TranslatePlaneDragger to --dragger command line option

This commit is contained in:
Robert Osfield
2012-01-30 12:26:28 +00:00
parent ad0872a783
commit 0381914b42

View File

@@ -26,10 +26,13 @@
#include <osgManipulator/TabBoxTrackballDragger>
#include <osgManipulator/TabPlaneDragger>
#include <osgManipulator/TabPlaneTrackballDragger>
#include <osgManipulator/Scale1DDragger>
#include <osgManipulator/Scale2DDragger>
#include <osgManipulator/TrackballDragger>
#include <osgManipulator/Translate1DDragger>
#include <osgManipulator/Translate2DDragger>
#include <osgManipulator/TranslateAxisDragger>
#include <osgManipulator/TranslatePlaneDragger>
#include <osg/ShapeDrawable>
#include <osg/MatrixTransform>
@@ -83,6 +86,24 @@ osgManipulator::Dragger* createDragger(const std::string& name)
d->setupDefaultGeometry();
dragger = d;
}
else if ("TranslatePlaneDragger" == name)
{
osgManipulator::TranslatePlaneDragger* d = new osgManipulator::TranslatePlaneDragger();
d->setupDefaultGeometry();
dragger = d;
}
else if ("Scale1DDragger" == name)
{
osgManipulator::Scale1DDragger* d = new osgManipulator::Scale1DDragger();
d->setupDefaultGeometry();
dragger = d;
}
else if ("Scale2DDragger" == name)
{
osgManipulator::Scale2DDragger* d = new osgManipulator::Scale2DDragger();
d->setupDefaultGeometry();
dragger = d;
}
else
{
osgManipulator::TabBoxDragger* d = new osgManipulator::TabBoxDragger();
@@ -305,7 +326,7 @@ int main( int argc, char **argv )
arguments.getApplicationUsage()->addCommandLineOption("--help-keys","Display keyboard & mouse bindings available");
arguments.getApplicationUsage()->addCommandLineOption("--help-all","Display all command line, env vars and keyboard & mouse bindings.");
arguments.getApplicationUsage()->addCommandLineOption("--dragger <draggername>","Use the specified dragger for manipulation [TabPlaneDragger,TabPlaneTrackballDragger,TrackballDragger,Translate1DDragger,Translate2DDragger,TranslateAxisDragger,TabBoxDragger]");
arguments.getApplicationUsage()->addCommandLineOption("--dragger <draggername>","Use the specified dragger for manipulation [TabPlaneDragger, TabPlaneTrackballDragger, TrackballDragger, Translate1DDragger, Translate2DDragger, TranslateAxisDragger, TabBoxDragger, TranslatePlaneDragger, Scale1DDragger, Scale2DDragger]");
arguments.getApplicationUsage()->addCommandLineOption("--fixedDraggerSize","Fix the size of the dragger geometry in the screen space");
bool fixedSizeInScreen = false;