VR-Link API Documentation for DIS
Home
Namespaces
Classes
Files
Examples
Libraries
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
include
vlpi
exponentialSmoother.h
Go to the documentation of this file.
1
/*********************************************************************
2
** Copyright (c) 1992-2010 VT MAK
3
** All rights reserved.
4
*********************************************************************/
5
6
#ifndef oldSmoother_H_
7
#define oldSmoother_H_
8
12
#include "
vlpi/trigonometricSmoother.h
"
13
#include "
smoothPosWithDr.h
"
14
#include "
smoothOriWithDr.h
"
15
29
class
DT_DLL_VLPROTIND
DtExponentialSmoother
:
public
DtTrigonometricSmoother
30
{
31
public
:
32
34
DtExponentialSmoother
();
35
37
virtual
~
DtExponentialSmoother
();
38
40
DtExponentialSmoother
(
const
DtExponentialSmoother
& orig);
41
43
DtExponentialSmoother
&
operator=
(
const
DtExponentialSmoother
& orig);
44
47
virtual
DtApproximator
*
clone
()
const
;
48
51
virtual
void
setAll
(
52
const
DtVector
& loc,
53
const
DtVector32
& vel,
54
const
DtTaitBryan
& ori,
55
const
DtVector32
& acc,
56
const
DtVector32
& rotVel,
57
DtTime
t);
58
60
virtual
void
setLocation
(
const
DtVector
& loc,
DtTime
t);
62
virtual
const
DtVector
&
approxLocation
(
DtTime
t)
const
;
63
65
virtual
void
setVelocity
(
const
DtVector32
& vel,
DtTime
t);
67
virtual
const
DtVector32
&
approxVelocity
(
DtTime
t)
const
;
68
70
virtual
void
setOrientation
(
const
DtTaitBryan
& ori,
DtTime
t);
72
virtual
const
DtTaitBryan
&
approxEuler
(
DtTime
t)
const
;
73
75
virtual
void
setAcceleration
(
const
DtVector32
& acc,
DtTime
t);
76
virtual
const
DtVector32
&
acceleration
(
DtTime
t)
const
;
77
79
virtual
void
setRotationalVelocity
(
const
DtVector32
& vel,
DtTime
t);
80
virtual
const
DtVector32
&
rotationalVelocity
(
DtTime
t)
const
;
81
83
virtual
const
DtDcm
&
approxBodyToGeoc
(
DtTime
t)
const
;
84
89
virtual
void
setSmoothEnable
(
bool
on);
90
virtual
bool
smoothEnable
()
const
;
91
95
virtual
void
setSmoothPeriod
(
DtTime
smoothPeriod);
96
virtual
DtTime
smoothPeriod
()
const
;
97
101
virtual
void
reset();
102
105
virtual
void
setFrozen
(
bool
frozen );
106
107
public
:
108
110
static
void
setDfltSmoothPeriod
(
DtTime
smoothPeriod);
111
static
DtTime
dfltSmoothPeriod
();
112
115
static
void
setMasterSmoothEnable
(
bool
onOff);
116
static
bool
masterSmoothEnable
();
117
118
protected
:
119
121
virtual
void
feedSmoothing();
122
130
DtExponentialSmoother
*
self
()
const
;
131
132
protected
:
133
134
DtSmoothPosWithDr
mySpos
;
135
DtSmoothOriWithDr
mySorient
;
136
DtTaitBryan
myApproxEuler
;
137
138
DtVector32
myRealVelocity
;
139
};
140
141
inline
DtExponentialSmoother
*
DtExponentialSmoother::self
()
const
142
{
143
return
(
DtExponentialSmoother
*)
this
;
144
}
145
147
typedef
DtExponentialSmoother
DtOldSmoother
;
148
149
#endif
150
151
152
153
154
Document ID: Generated on Mon Jun 22 21:18:40 EDT 2020 from SVN revision 213785
Copyright © 2005-2018 MAK Technologies. All Rights Reserved (
www.mak.com
)