Blender V2.61 - r43446
|
00001 00004 /* 00005 * UncontrolledObject.cpp 00006 * 00007 * Created on: Jan 5, 2009 00008 * Author: rubensmits 00009 */ 00010 00011 #include "UncontrolledObject.hpp" 00012 00013 namespace iTaSC{ 00014 00015 UncontrolledObject::UncontrolledObject():Object(UnControlled), 00016 m_nu(0), m_nf(0), m_xudot() 00017 { 00018 } 00019 00020 UncontrolledObject::~UncontrolledObject() 00021 { 00022 } 00023 00024 void UncontrolledObject::initialize(unsigned int _nu, unsigned int _nf) 00025 { 00026 assert (_nf >= 1); 00027 m_nu = _nu; 00028 m_nf = _nf; 00029 if (_nu > 0) 00030 m_xudot = e_zero_vector(_nu); 00031 // clear all Jacobian if any 00032 m_JuArray.clear(); 00033 // reserve one more to have an zero matrix handy 00034 if (m_nu > 0) 00035 m_JuArray.resize(m_nf+1, e_zero_matrix(6,m_nu)); 00036 } 00037 00038 const e_matrix& UncontrolledObject::getJu(unsigned int frameIndex) const 00039 { 00040 assert (m_nu > 0); 00041 return m_JuArray[(frameIndex>m_nf)?m_nf:frameIndex]; 00042 } 00043 00044 00045 00046 }