root/OpenSceneGraph/trunk/include/osgManipulator/TrackballDragger @ 9899

Revision 9899, 1.5 kB (checked in by robert, 6 years ago)

From David Callu, "osgManipulator Object have not META_Object macro call in class definition.

I add META_OSGMANIPULATOR_Object macro which define className, libraryName,
isSameKindAs methods.
Clone method is not appropriate for osgManipulator Object."

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
2 *
3 * This library is open source and may be redistributed and/or modified under
4 * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
5 * (at your option) any later version.  The full license is in LICENSE file
6 * included with this distribution, and on the openscenegraph.org website.
7 *
8 * This library is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 * OpenSceneGraph Public License for more details.
12*/
13//osgManipulator - Copyright (C) 2007 Fugro-Jason B.V.
14
15#ifndef OSGMANIPULATOR_TRACKBALLDRAGGER
16#define OSGMANIPULATOR_TRACKBALLDRAGGER 1
17
18#include <osgManipulator/RotateCylinderDragger>
19#include <osgManipulator/RotateSphereDragger>
20
21namespace osgManipulator {
22
23/**
24 * Dragger for performing rotation in all axes.
25 */
26class OSGMANIPULATOR_EXPORT TrackballDragger : public CompositeDragger
27{
28    public:
29
30        TrackballDragger(bool useAutoTransform=false);
31
32        META_OSGMANIPULATOR_Object(osgManipulator,TrackballDragger)
33
34        /** Setup default geometry for dragger. */
35        void setupDefaultGeometry();
36
37    protected:
38
39        virtual ~TrackballDragger();
40
41        osg::ref_ptr<RotateCylinderDragger> _xDragger;
42        osg::ref_ptr<RotateCylinderDragger> _yDragger;
43        osg::ref_ptr<RotateCylinderDragger> _zDragger;
44        osg::ref_ptr<RotateSphereDragger>   _xyzDragger;
45};
46
47
48}
49
50#endif
Note: See TracBrowser for help on using the browser.