Blender
V3.3
intern
itasc
UncontrolledObject.cpp
Go to the documentation of this file.
1
/* SPDX-License-Identifier: LGPL-2.1-or-later
2
* Copyright 2009 Ruben Smits. */
3
8
#include "
UncontrolledObject.hpp
"
9
10
namespace
iTaSC
{
11
12
UncontrolledObject::UncontrolledObject
():
Object
(UnControlled),
13
m_nu(0), m_nf(0), m_xudot()
14
{
15
}
16
17
UncontrolledObject::~UncontrolledObject
()
18
{
19
}
20
21
void
UncontrolledObject::initialize
(
unsigned
int
_nu,
unsigned
int
_nf)
22
{
23
assert (_nf >= 1);
24
m_nu
= _nu;
25
m_nf
= _nf;
26
if
(_nu > 0)
27
m_xudot
=
e_zero_vector
(_nu);
28
// clear all Jacobian if any
29
m_JuArray
.clear();
30
// reserve one more to have an zero matrix handy
31
if
(
m_nu
> 0)
32
m_JuArray
.resize(
m_nf
+1,
e_zero_matrix
(6,
m_nu
));
33
}
34
35
const
e_matrix
&
UncontrolledObject::getJu
(
unsigned
int
frameIndex)
const
36
{
37
assert (
m_nu
> 0);
38
return
m_JuArray
[(frameIndex>
m_nf
)?
m_nf
:frameIndex];
39
}
40
41
42
43
}
UncontrolledObject.hpp
iTaSC::Object
Definition:
Object.hpp:19
iTaSC::UncontrolledObject::getJu
virtual const e_matrix & getJu(unsigned int frameIndex) const
Definition:
UncontrolledObject.cpp:35
iTaSC::UncontrolledObject::m_JuArray
std::vector< e_matrix > m_JuArray
Definition:
UncontrolledObject.hpp:20
iTaSC::UncontrolledObject::m_xudot
e_vector m_xudot
Definition:
UncontrolledObject.hpp:19
iTaSC::UncontrolledObject::m_nu
unsigned int m_nu
Definition:
UncontrolledObject.hpp:18
iTaSC::UncontrolledObject::UncontrolledObject
UncontrolledObject()
Definition:
UncontrolledObject.cpp:12
iTaSC::UncontrolledObject::initialize
virtual void initialize(unsigned int _nu, unsigned int _nf)
Definition:
UncontrolledObject.cpp:21
iTaSC::UncontrolledObject::m_nf
unsigned int m_nf
Definition:
UncontrolledObject.hpp:18
iTaSC::UncontrolledObject::~UncontrolledObject
virtual ~UncontrolledObject()
Definition:
UncontrolledObject.cpp:17
e_zero_vector
#define e_zero_vector
Definition:
eigen_types.hpp:39
e_zero_matrix
#define e_zero_matrix
Definition:
eigen_types.hpp:44
e_matrix
#define e_matrix
Definition:
eigen_types.hpp:40
iTaSC
Definition:
Armature.cpp:13
Generated on Sat Jul 27 2024 14:57:55 for Blender by
doxygen
1.9.1