26 class PolygonSelection;
31 class DataObjectGroup;
35 namespace osgViewer {
class CompositeViewer;
class View;
class GraphicsWindow; }
36 namespace osgGeo {
class TrackballManipulator; }
39 class TrackBallManipulatorMessenger;
47 class GraphicsContext;
49 class MatrixTransform;
61 friend class TrackBallManipulatorMessenger;
67 void viewAll(
bool animate);
73 bool serializeScene(
const char*)
const;
75 void setBackgroundColor(
const Color&);
76 Color getBackgroundColor()
const;
79 float getMouseWheelZoomFactor()
const;
82 void setMouseWheelZoomFactor(
float);
84 void setReversedMouseWheelDirection(
bool);
85 bool getReversedMouseWheelDirection()
const;
87 void setHomePos(
const IOPar&);
88 void resetToHomePosition();
90 void toggleCameraType();
91 bool isCameraPerspective()
const;
92 bool isCameraOrthographic()
const;
103 void uiRotate(
float angle,
bool horizontal);
104 void uiZoom(
float rel,
const osg::Vec3f* dir=0);
105 void setCameraZoom(
float val);
106 float getCameraZoom()
const;
109 bool isViewMode()
const;
110 virtual void setViewMode(
bool viewmode,
bool trigger);
112 Coord3 getCameraPosition()
const;
122 void setAnimationEnabled(
bool);
123 bool isAnimationEnabled()
const;
124 void showRotAxis(
bool);
125 bool isAxisShown()
const;
126 void setAnnotColor(
const Color&);
127 void setAnnotationFont(
const FontData&);
134 void fillCameraPos(
IOPar&)
const;
135 bool useCameraPos(
const IOPar&);
138 void setScenesPixelDensity(
float dpi);
144 void setStereoOffset(
float);
145 float getStereoOffset()
const;
147 void updateZDomainInfo();
149 void setMapView(
bool yn);
157 void enableDragging(
bool yn );
163 virtual void updateActModeCursor();
167 void notifyManipulatorMovement(
168 float dh,
float dv,
float df);
174 void handleGestureEvent(QGestureEvent*);
175 static osgViewer::CompositeViewer* getCompositeViewer();
179 virtual osgViewer::GraphicsWindow& getGraphicsWindow() = 0;
180 virtual osg::GraphicsContext* getGraphicsContext() = 0;
184 void requestRedraw();
186 osg::Camera* getOsgCamera();
187 const osg::Camera* getOsgCamera()
const;
188 void setCameraPos(
const osg::Vec3f&,
189 const osg::Vec3f&,
bool);
192 void enableThumbWheelHandling(
bool yn,
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
bool isHomePosEmpty()
Definition: ui3dviewerbody.h:133
keep osg camera status and render info
Definition: viscamera.h:27
osg::Switch * offscreenrenderswitch_
Definition: ui3dviewerbody.h:205
Definition of a mouse cursor, can be either a predefined shape (from the enum, or a file...
Definition: mousecursor.h:24
ui3DViewer & handle_
Definition: ui3dviewerbody.h:195
RefMan< visBase::DataObjectGroup > hudscene_
Definition: ui3dviewerbody.h:214
virtual uiObject & uiObjHandle()
Definition: i_uiobjqtbody.h:51
RefMan< visBase::Scene > scene_
Definition: ui3dviewerbody.h:199
bool isMapView() const
Definition: ui3dviewerbody.h:150
IOPar & printpar_
Definition: ui3dviewerbody.h:196
osgViewer::View * hudview_
Definition: ui3dviewerbody.h:212
uiEventFilter eventfilter_
Definition: ui3dviewerbody.h:216
uiMouseEventBlockerByGestures & mouseeventblocker_
Definition: ui3dviewerbody.h:217
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
const osgViewer::View * getOsgViewerHudView() const
Definition: ui3dviewerbody.h:137
A collection of geoscientific extensions to OpenSceneGraph.
Definition: visannot.h:35
Baseclass for different body implementation (direct & indirect) of OSG.
Definition: ui3dviewerbody.h:59
bool mapview_
Definition: ui3dviewerbody.h:229
The base class for most UI elements.
Definition: uiobj.h:35
Class for a swap callback. This class triggers on the second render that the context is up an running...
Definition: swapbuffercallback.h:25
Definition: uiparent.h:24
Definition: visthumbwheel.h:26
Data needed to make an actual font.
Definition: fontdata.h:18
osgViewer::CompositeViewer * compositeviewer_
Definition: ui3dviewerbody.h:206
RefMan< visBase::PolygonSelection > polygonselection_
Definition: ui3dviewerbody.h:219
FixedString None()
Definition: keystrs.h:90
const osgViewer::View * getOsgViewerMainView() const
Definition: ui3dviewerbody.h:136
is a class that is able to recieve events from Qt and trigger an OD-style notification/callback.
Definition: uieventfilter.h:26
RefMan< visBase::ThumbWheel > horthumbwheel_
Definition: ui3dviewerbody.h:200
WheelMode
Definition: ui3dviewerbody.h:118
3D point or vector
Definition: commontypes.h:57
RefMan< visBase::SceneColTab > visscenecoltab_
Definition: ui3dviewerbody.h:225
RefMan< visBase::Axes > axes_
Definition: ui3dviewerbody.h:218
Definition: vispolygonselection.h:37
Generalized set of parameters of the keyword-value type.
Definition: iopar.h:53
ViewModeCursor
Definition: ui3dviewerbody.h:159
IOPar homepos_
Definition: ui3dviewerbody.h:224
Definition: ui3dviewerbody.h:159
StereoType
Definition: ui3dviewerbody.h:140
Definition: ui3dviewer.h:27
RefMan< visBase::ThumbWheel > verthumbwheel_
Definition: ui3dviewerbody.h:201
RefMan< visBase::ThumbWheel > distancethumbwheel_
Definition: ui3dviewerbody.h:202
static bool isbadglwarned_
Definition: ui3dviewerbody.h:230
SwapCallback * swapcallback_
Definition: ui3dviewerbody.h:222
KeyBindMan & keyBindMan()
Definition: ui3dviewerbody.h:152
RefMan< visBase::Camera > camera_
Definition: ui3dviewerbody.h:198
visBase::Camera * getVisCamera()
Definition: ui3dviewerbody.h:113
const visBase::Scene * getScene() const
Definition: ui3dviewerbody.h:71
int wheeldisplaymode_
Definition: ui3dviewerbody.h:203
visBase::Scene * getScene()
Definition: ui3dviewerbody.h:70
KeyBindMan & keybindman_
Definition: ui3dviewerbody.h:227
float stereooffset_
Definition: ui3dviewerbody.h:210
Definition: visannot.h:40
Definition: visscenecoltab.h:25
Scene manages all DataObjects and has some managing functions such as the selection management and va...
Definition: visscene.h:38
TrackBallManipulatorMessenger * manipmessenger_
Definition: ui3dviewerbody.h:220
Open Scene Graph.
Definition: visannot.h:26
Color is an RGB color object, with a transparancy. The storage is in a 4-byte integer, similar to Qt.
Definition: color.h:24
Definition: uimouseeventblockerbygesture.h:25
Manages keybindings.
Definition: keybindings.h:73
osg::Switch * offscreenrenderhudswitch_
Definition: ui3dviewerbody.h:213
osgViewer::View * view_
Definition: ui3dviewerbody.h:207
#define mClass(module)
Definition: commondefs.h:161
MouseCursor actmodecursor_
Definition: ui3dviewerbody.h:165
osg::Viewport * viewport_
Definition: ui3dviewerbody.h:208
StereoType stereotype_
Definition: ui3dviewerbody.h:209