VR-Forces 4.1 Class Documentation
Home
Modules
Namespaces
Classes
Files
Examples
Behavior Models
File List
File Members
include
vrfmodel
aggregatedMovementActuator.h
Go to the documentation of this file.
1
/*******************************************************************************
2
** Copyright (c) 2008 MAK Technologies, Inc.
3
** All rights reserved.
4
*******************************************************************************/
5
8
9
#pragma once
10
11
#include "
vrfobjcore/actCmpnt.h
"
12
#include "
vrfmodel/vrfmodelDefines.h
"
13
14
class
DtInputPortGroup
;
15
class
DtAnalogInputPort
;
16
class
DtVrfMovingObjectStateRepository
;
17
class
DtVrfAggregateStateRepository
;
18
class
DtActuatorComponentDescriptor
;
19
20
26
class
DT_DLL_vrfmodel
DtAggregatedMovementActuator
:
public
DtActuatorComponent
27
{
28
public
:
29
31
DtAggregatedMovementActuator
(
const
DtString
& name,
DtVrfObject
*
object
,
32
DtSimManager
* simManager,
DtComponentDescriptor
* compDescriptor,
33
DtReaderWriterRegistry
* parentRegistry = 0);
34
36
virtual
~
DtAggregatedMovementActuator
();
37
39
virtual
bool
init
();
40
42
virtual
DtString
type
()
const
;
43
45
virtual
void
tick
();
46
47
public
:
48
51
static
DtSimComponent
* creator(
const
DtString
& name,
DtVrfObject
*
object
,
52
DtSimManager
* simManager,
DtComponentDescriptor
* compDescriptor,
53
DtReaderWriterRegistry
* parentRegistry);
54
55
protected
:
56
57
virtual
DtVector
calculateProjectedLocation(
58
const
DtVector
& oldLocalPosition,
const
DtVector
& newBodyVelocity,
59
double
newHeading);
60
61
virtual
void
calculateOrientationAndPosition(
62
const
DtVector
& newLocalProjectedLocation,
double
newHeading,
63
DtDcm& newLocalOrientation,
DtVector
& newLocalPosition);
64
65
virtual
void
groundClamp(
double
heading,
66
const
DtVector
& location,
DtAttachedTerrain
& terrainDatabase,
DtVector
& newNormal);
67
68
virtual
void
updateRepository(
const
DtVector
& position,
69
const
DtVector
& velocity,
const
DtVector
& acceleration,
70
const
DtTaitBryan & localOrientation,
const
DtVector
& rotationalVelocity);
71
72
protected
:
74
virtual
bool
createPorts
();
75
77
virtual
bool
createPortGroups
();
78
80
DtAggregatedMovementActuator
(
const
DtAggregatedMovementActuator
& orig);
81
83
const
DtAggregatedMovementActuator
&
operator=
(
const
DtAggregatedMovementActuator
& orig);
84
85
protected
:
88
95
DtAnalogInputPort
*
myMovementDirectionInputPort
;
96
102
DtAnalogInputPort
*
mySpeedInputPort
;
103
107
DtInputPortGroup
*
myMovementControlPortGroupInputPortGroup
;
108
112
DtVrfMovingObjectStateRepository
*
myMovingObjectStateRepository
;
113
DtVrfAggregateStateRepository
*
myAggregateStateRepository
;
115
116
const
DtActuatorComponentDescriptor
*
myActuatorDescriptor
;
117
118
};
119
120
Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (
www.mak.com
)