VR-Forces Development_Version Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vrfGuiCore
boundingVolumeSupportPointCalculator.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2013 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
11
12
#pragma once
13
14
#include <
vrfGuiCore/vrfGuiCore.h
>
15
16
#include <matrix/vlVector.h>
17
#include <map>
18
19
class
DtEntityType;
20
class
Dt3dBoundingVolume;
21
22
namespace
makVrv
23
{
24
class
DtDe;
25
class
DtSceneObject;
26
class
DtOsgExtrudedPolygonModel;
27
}
28
29
namespace
osg
30
{
31
class
Node
;
32
}
33
34
namespace
makVrf
35
{
41
class
DT_DLL_VRFGUICORE
DtBoundingVolumeSupportPointCalculator
42
{
43
public
:
44
enum
Framework
45
{
46
NoFramework = 0,
47
AllModels = 1,
48
DiGuyOnly = 2,
49
ArticulatedOnly = 3
50
};
51
53
struct
LRInfo
54
{
55
double
distance
;
56
DtVector
left
;
57
DtVector
right
;
58
DtVector
other
;
59
bool
hasOther
;
60
};
61
63
typedef
std::map<double, LRInfo>
LeftRightCalcs
;
64
65
typedef
std::map<double, std::vector<DtVector> >
PointsByHeight
;
66
67
public
:
69
DtBoundingVolumeSupportPointCalculator
(
makVrv::DtDe
&);
70
72
virtual
~
DtBoundingVolumeSupportPointCalculator
();
73
78
//
86
virtual
bool
calculateSupportPointsAndBoundingVolume(
const
DtEntityType&,
makVrv::DtSceneObject
*,
87
DtVector
& left,
DtVector
& right,
DtVector
& other, Dt3dBoundingVolume&,
const
Framework
&);
88
89
protected
:
91
virtual
osg::Node* rootNodeFromSceneObject(
makVrv::DtSceneObject
*,
bool
& isDiGuy)
const
;
92
93
virtual
void
calculatePossibleLeftRightPointsFromModel(
const
PointsByHeight
&,
const
Dt3dBoundingVolume& bv,
94
LeftRightCalcs
&)
const
;
95
96
protected
:
97
makVrv::DtOsgExtrudedPolygonModel
*
myFramework
;
98
makVrv::DtDe
&
myDe
;
99
};
100
}
101
Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (
www.mak.com
)