VR-Forces 4.6.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
vrvOsg
DtRectangularPyramidModelInstance.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* Copyright (c) 2015 MAK Technologies, Inc.
3
* All rights reserved.
4
*****************************************************************************/
5
9
10
#pragma once
11
12
#include <
vrvOsg/vrvOsg.h
>
13
14
#include <
vrvOsg/DtOsgModelInstance.h
>
15
16
#include <osg/MatrixTransform>
17
#include <osg/Geometry>
18
#include <osg/Group>
19
20
namespace
makVrv
21
{
22
class
DtDe;
23
class
DtModelInstance;
24
class
DtModelDefinition;
25
class
DtOsgSceneConnector;
26
29
class
DT_DLL_VRVOSG
DtRectangularPyramidModelInstance
30
:
public
makVrv::DtOsgModelInstance
31
{
32
public
:
33
37
DtRectangularPyramidModelInstance
(
makVrv::DtDe
& de );
38
41
virtual
~
DtRectangularPyramidModelInstance
();
42
43
46
49
virtual
void
addToConnector(
makVrv::DtOsgSceneConnector
* connector );
50
53
virtual
bool
removeFromConnector(
makVrv::DtOsgSceneConnector
* connector );
54
57
virtual
bool
realize(
makVrv::DtModelDefinition
& definition );
58
61
virtual
void
setVisible
(
bool
isVisible ) {}
62
64
67
73
virtual
void
setRelativePosition(
double
x,
double
y,
double
z );
74
80
virtual
void
setOrientation(
double
yaw,
double
pitch,
double
roll );
81
84
virtual
void
setSize(
double
slantHeight );
85
92
virtual
void
setColor(
float
r,
float
g,
float
b,
float
a );
93
100
void
setInnerColor(
float
r,
float
g,
float
b,
float
a );
101
108
void
setOuterColor(
float
r,
float
g,
float
b,
float
a );
109
112
virtual
void
setXHalfAngle(
double
xHalfAngle );
113
116
virtual
void
setYHalfAngle(
double
yHalfAngle );
117
122
virtual
void
setShowLines(
bool
showLines );
123
128
virtual
void
setLinesHaveAlpha(
bool
lineAlpha );
129
131
133
void
update();
134
135
protected
:
136
139
143
virtual
void
updateGeometry();
144
148
virtual
void
updateGeometryColors();
149
152
virtual
void
updateGeometryWireframeState();
153
157
virtual
void
updateGeometryTransforms();
158
160
161
protected
:
162
167
static
void
clampAngle(
double
& val,
double
minAngle,
double
maxAngle );
168
169
protected
:
170
171
osg::ref_ptr<osg::MatrixTransform>
myTransform
;
172
osg::ref_ptr<osg::Group>
myBlendNode
;
173
osg::ref_ptr<osg::Group>
myWireNode
;
174
osg::ref_ptr<osg::Geometry>
myGeometry
;
175
osg::ref_ptr<osg::Geode>
myFrontGeode
;
176
osg::ref_ptr<osg::Geode>
myBackGeode
;
177
178
bool
myDirtyGeometry
;
179
bool
myDirtyColors
;
180
bool
myDirtyTransforms
;
181
bool
myDirtyWireframe
;
182
183
osg::Vec3d
myRelativePosition
;
184
osg::Quat
myRelativeOrientation
;
185
osg::Vec3d
myDimensions
;
186
double
myXHalfAngle
;
187
double
myYHalfAngle
;
188
189
int
myCenterVertexIndex
;
190
osg::Vec4
myInnerColor
;
191
osg::Vec4
myOuterColor
;
192
193
bool
myShowLines
;
194
bool
myLineAlphaFlag
;
195
196
};
197
198
}
Document ID: Generated on Wed Jul 25 16:57:45 EDT 2018 from SVN revision 190790
Copyright © 2005-2018 VT MÄK. All Rights Reserved (
www.mak.com
)