VR-Forces 4.1.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrvOsg
DtOsgTerrainOverlayManager.h
Go to the documentation of this file.
1
/******************************************************************************
2
** Copyright (c) 2008 MAK Technologies, Inc.
3
** All rights reserved.
4
******************************************************************************/
5
/******************************************************************************
6
** $RCSfile: DtOsgOverlayManager.h,v $ $Revision: 1.13 $ $State: Exp $
7
******************************************************************************/
8
12
13
#include <
vrvOsg/vrvOsg.h
>
14
#include <
vrvCore/DtDe.h
>
15
#include <
vrvOsg/DtOsgTerrainOverlayOperation.h
>
16
17
#include <osg/Group>
18
#include <osg/Switch>
19
20
#include <vector>
21
#include <deque>
22
23
namespace
makVrv
24
{
28
class
DT_DLL_VRVOSG
DtOsgTerrainOverlayManager
29
{
30
typedef
std::deque<DtOsgTerrainOverlayOperation>
OverlayList
;
31
32
public
:
33
DtOsgTerrainOverlayManager
(
DtDe
& de, osg::Node* terrain);
34
35
~
DtOsgTerrainOverlayManager
();
36
38
virtual
void
setTerrain(osg::Node* terrain);
39
41
virtual
void
setOverlay(
DtOsgTerrainOverlayOperation
overlay);
42
44
virtual
void
clearOverlays();
45
47
virtual
void
removeOverlay(
DtTerrainOverlayOperation::OverlayType
type);
48
50
virtual
void
setOverlayScale(
DtOsgTerrainOverlayOperation::OverlayType
type,
const
std::vector<double> scale);
51
53
virtual
void
setOverlayOffset(
DtOsgTerrainOverlayOperation::OverlayType
type,
const
std::vector<double> offset);
54
56
virtual
void
setWrapMode(
DtOsgTerrainOverlayOperation::OverlayType
type,
int
);
57
59
virtual
void
setBlendMode(
DtOsgTerrainOverlayOperation::OverlayType
type,
int
);
60
62
virtual
void
setRasterLayerPosition(
DtOsgTerrainOverlayOperation::OverlayType
type,
int
);
63
65
virtual
OverlayList
overlays()
const
;
66
68
virtual
std::string overlayDefinition(
DtTerrainOverlayOperation::OverlayType
type)
const
;
69
71
virtual
std::vector<double> overlayScale(
DtTerrainOverlayOperation::OverlayType
type)
const
;
72
74
virtual
std::vector<double> overlayOffset(
DtTerrainOverlayOperation::OverlayType
type)
const
;
75
77
virtual
DtTerrainOverlayOperation
defaultOverlay(
DtOsgTerrainOverlayOperation::OverlayType
type);
78
80
virtual
DtTerrainOverlayOperation
currentOverlay(
DtOsgTerrainOverlayOperation::OverlayType
type);
81
86
virtual
int
maxTextureUnits();
87
protected
:
89
void
initializeGraph();
90
92
void
restoreGraph();
93
95
virtual
void
applyOverlays(
bool
reset =
true
);
96
97
protected
:
98
OverlayList
myOverlays
;
99
100
osg::ref_ptr<osg::Node>
myTerrainNode
;
101
osg::StateSet*
myOriginalState
;
102
std::vector<std::string>
myOriginalDescriptions
;
103
104
DtDe
&
myDe
;
105
106
bool
myInitializedFlag
;
107
108
int
myMaxTextureUnits
;
109
};
110
}
111
Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)