VR-Forces 4.2 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfmodel
rotWngColAvod.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2000 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
11
12
#pragma once
13
14
#include "
vrfmodel/rotWngMvToCtl.h
"
15
#include <vl/hostStructs.h>
16
#include "
vrfobjcore/filteredObjList.h
"
17
18
#include <vl/objectId.h>
19
20
class
DtRotaryWingColAvoidanceControllerDescriptor
;
21
26
#include "
vrfmodel/vrfmodelDefines.h
"
27
class
DT_DLL_vrfmodel
DtRotaryWingCollisionAvoidanceController
:
public
DtRotaryWingMoveToControllerComponent
28
{
29
30
public
:
31
34
DtRotaryWingCollisionAvoidanceController
(
const
DtString
& name,
35
DtVrfObject
* owner,
36
DtSimManager
* simManager,
37
DtComponentDescriptor
* desc = 0,
38
DtReaderWriterRegistry
* parentRegistry = 0);
39
41
virtual
~
DtRotaryWingCollisionAvoidanceController
();
42
virtual
bool
init
();
43
45
virtual
void
tick
();
46
48
virtual
DtVrfObject
* detectCollision();
49
50
virtual
bool
checkEntityForCollision(
DtVrfObject
* collidee);
51
53
virtual
void
avoidCollision(
DtVrfObject
* collidee);
54
56
virtual
void
processExistingCollision();
57
60
virtual
DtString
type
()
const
;
61
65
static
DtSimComponent
*
creator
(
const
DtString
& name,
66
DtVrfObject
* owner,
67
DtSimManager
* simManager,
68
DtComponentDescriptor
* desc = 0,
69
DtReaderWriterRegistry
* parentRegistry = 0);
70
72
virtual
bool
distCleared();
73
76
virtual
double
timeToMinimumDistance(
const
DtVector
& deltaVel,
77
const
DtVector
& deltaPos)
const
;
78
79
virtual
void
registerTaskMsgCallbacks
();
80
82
virtual
void
clearCollision();
83
84
protected
:
85
86
92
94
DtRotaryWingCollisionAvoidanceController
();
95
97
DtRotaryWingCollisionAvoidanceController
98
(
const
DtRotaryWingCollisionAvoidanceController
& orig);
99
101
DtRotaryWingCollisionAvoidanceController
&
operator
=
102
(
const
DtRotaryWingCollisionAvoidanceController
& orig);
103
104
106
virtual
void
checkMinDiveAltitude();
107
110
virtual
void
pilotProperties
();
111
112
protected
:
114
DtManagedObjectListConstPtr
myPhysicalEntityList
;
115
117
DtVector
myEvadeDirection
;
118
DtReal
myRelativeVelMag
;
119
DtReal
myCurrentDistanceSq
;
121
DtVector
myClearingPt
;
122
123
DtObjectId
myObjectId
;
124
DtObjectId
myCollidee
;
125
bool
myHavePortGroup
;
126
bool
myIsColliding
;
127
bool
myIsClearing
;
128
bool
myTooLow
;
129
DtRotaryWingColAvoidanceControllerDescriptor
*
130
myAvoidanceControllerDescriptor
;
131
};
132
Document ID: Generated on Sun Nov 24 19:49:21 EST 2013 from SVN revision 133924
Copyright © 2005-2013 VT MÄK. All Rights Reserved (
www.mak.com
)