VR-Forces 4.1.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
bhavePathDataGen
baseFeatureConverter.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2011 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
6
#pragma once
7
8
#include <deque>
9
#include <
terrainInterface/terrainProcessPolygonsBox.h
>
10
11
#include <
features/featureGeometry.h
>
12
#include <
features/query.h
>
13
#include "
features/obstacleFeature.h
"
14
#include <list>
15
16
class
DtTerrainInterface
;
17
18
namespace
BHAVE
19
{
20
typedef
void (*
DtProcessBoundingPolygonCallbackFcn
)(
const
std::deque<DtPoint>& points,
unsigned
int
terrainType,
void
* usr);
21
22
class
DtBaseFeatureConverter
23
{
24
public
:
34
DtBaseFeatureConverter
(
DtTerrainInterface
*
terrainInterface
,
35
const
std::string&
featureType
,
36
unsigned
int
terrainType
,
37
bool
isGeocentric
=
false
);
38
39
virtual
~DtBaseFeatureConverter
();
40
49
virtual
void
init
(
DtTerrainProcessPolygonsBox
& box);
50
58
virtual
bool
processAllBoundingPolygons
(
DtProcessBoundingPolygonCallbackFcn
func,
void
* usr) = 0;
59
62
virtual
bool
isValidBoundingPolygon
(
const
std::deque<DtPoint>& points)
const
;
63
64
virtual
DtTerrainInterface
*
terrainInterface
()
const
{
return
myTerrainInterface
; }
65
virtual
unsigned
int
terrainType
()
const
{
return
myTerrainType
; }
66
virtual
std::string
featureType
()
const
{
return
myFeatureType
; }
67
virtual
MAKVRinTerra::DtQuery
*
query
()
const
{
return
myQuery
; }
68
virtual
bool
isGeocentric
()
const
{
return
myIsGeocentric
; }
69
70
protected
:
71
DtTerrainInterface
*
myTerrainInterface
;
72
std::string
myFeatureType
;
73
MAKVRinTerra::DtQuery
*
myQuery
;
74
unsigned
int
myTerrainType
;
75
76
bool
myIsGeocentric
;
77
};
78
80
81
class
DtObstacleFeatureConverter
:
public
DtBaseFeatureConverter
82
{
83
public
:
84
DtObstacleFeatureConverter
(
DtTerrainInterface
*
terrainInterface
,
85
const
std::string&
featureType
,
86
unsigned
int
terrainType
,
87
bool
isGeocentric
=
false
);
88
89
virtual
~DtObstacleFeatureConverter
();
90
91
virtual
void
init
(
DtTerrainProcessPolygonsBox
& box);
92
virtual
bool
processAllBoundingPolygons
(
DtProcessBoundingPolygonCallbackFcn
func,
void
* usr);
93
96
virtual
void
operator()
(
const
MAKVRinTerra::DtObstacleFeature
& feature);
97
98
protected
:
99
std::list< std::deque<DtPoint> >
myObstacles
;
100
};
101
}
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
)