112 FlukeAnchor(
const std::string& simObjectName, ISimObjectCreator*
const creator);
114 void OdeFcn(
const double T,
const double*
const X,
double*
const XDot)
const;
116 void FinalSetup(
const double T,
const double*
const X, ISimObjectCreator*
const creator);
118#ifdef FH_VISUALIZATION
119 void RenderInit(Ogre::Root*
const ogreRoot, ISimObjectCreator*
const creator);
120 void RenderUpdate(
const double T,
const double*
const X);
123 const double* Position(
const double T,
const double*
const X);
124 const double* Velocity(
const double T,
const double*
const X);
125 const double* Quater(
const double T,
const double*
const X);
126 const double* Omega(
const double T,
const double*
const X);
129 bool HasJacobians()
const override;
130 void OdeJacobian(
double T,
const double* X,
double* J,
int nStates)
override;
131 int GetJacobianSparsity(
int nStates,
int* rowPtr,
int* colIdx)
override;
137 double m_MaterialRho;
138 double m_ShankLength;
139 double m_ShankDiameter;
140 double m_ShankThickness;
141 double m_ShankFlukeAngle;
143 double m_FlukeSideLength;
144 double m_FlukePointLength;
145 double m_FlukeThickness;
147 ISignalPort* m_Force;
160 int LocalIndex(
int globalStateIndex)
const {
return globalStateIndex - m_PositionIndex; }
162 environment::EnvironmentProvider* m_environment;
164#ifdef FH_VISUALIZATION
165 Ogre::SceneNode* m_RenderNode;
166 Ogre::SceneNode* m_seabed;
Definition CRigidCompositeBody.h:12