OpendTect-6_4  6.4
viscamera.h
Go to the documentation of this file.
1 #ifndef viscamera_h
2 #define viscamera_h
3 
4 /*+
5 ________________________________________________________________________
6 
7  (C) dGB Beheer B.V.; (LICENSE) http://opendtect.org/OpendTect_license.txt
8  Author: Kristofer Tingdahl
9  Date: 4-11-2002
10  RCS: $Id$
11 ________________________________________________________________________
12 
13 
14 -*/
15 
16 #include "visbasemod.h"
17 #include "visdata.h"
18 #include "position.h"
19 namespace osg { class Camera; class RenderInfo; }
20 
21 namespace visBase
22 {
23 
24 class DrawCallback;
25 
31 {
32 public:
33 
34  static Camera* create()
36 
37  osg::Camera* osgCamera() const;
38  Coord3 getTranslation() const;
39  Coord3 getScale() const;
40  void getRotation(Coord3& vec,double& angle)const;
41  void getLookAtMatrix(Coord3&,Coord3&,Coord3&)const;
42 
43 
44  Notifier<Camera> preDraw;
45  Notifier<Camera> postDraw;
46 
47  const osg::RenderInfo* getRenderInfo() const { return renderinfo_; }
49 
50 private:
51  friend class DrawCallback;
52 
53  void triggerDrawCallBack(const DrawCallback*,
54  const osg::RenderInfo&);
55 
56  virtual ~Camera();
57 
58  osg::Camera* camera_;
59  const osg::RenderInfo* renderinfo_;
60  DrawCallback* predraw_;
61  DrawCallback* postdraw_;
62 
63 };
64 
65 
66 };
67 
68 
69 #endif
#define mExpClass(module)
Definition: commondefs.h:160
keep osg camera status and render info
Definition: viscamera.h:30
DataObject is the base class off all objects that are used in Visualization and ought to be shared in...
Definition: visdata.h:65
DrawCallback * predraw_
Definition: viscamera.h:60
static Camera * create()
Definition: viscamera.h:34
Definition: callback.h:254
const osg::RenderInfo * renderinfo_
Definition: viscamera.h:59
A cartesian coordinate in 3D space.
Definition: coord.h:72
osg::Camera * camera_
Definition: viscamera.h:58
DrawCallback * postdraw_
Definition: viscamera.h:61
Definition: visannot.h:43
Open Scene Graph.
Definition: visannot.h:29
#define mCreateDataObj(clss)
Definition: visdata.h:209

Generated at for the OpendTect seismic interpretation project. Copyright (C): dGB Beheer B. V. 2019