Fhsim
Marine systems simulation
CRigidCylinder.h
1
#ifndef C_RigidCylinder_H
2
#define C_RigidCylinder_H
3
4
#include "CRigidBody.h"
5
6
enum
CylinderEnd
7
{
8
OPEN,
9
CLOSED,
10
HALFSPHERE
11
};
12
13
namespace
rigidbody
14
{
15
class
CRigidCylinder
:
public
CRigidBody
16
{
17
public
:
18
CRigidCylinder
();
19
virtual
~CRigidCylinder
();
20
CRigidCylinder
(
double
innerRadius,
double
outerRadius,
double
height,
double
mass, CylinderEnd end,
const
string
& material);
21
mat6 GetInertiaMatrix(
const
vec3& r,
double
time,
const
double
* states,
CEnvironment
* environment);
22
vec6 GetInternalForces(
const
vec6& dX,
const
vec3& r,
const
quat& q,
CEnvironment
* environment,
double
time,
const
double
* states);
23
24
#ifdef FH_VISUALIZATION
25
void
DrawBody(Ogre::SceneNode* renderNode, Ogre::SceneManager* sceneMgr);
26
#endif
27
28
protected
:
29
double
iR;
//inner radius
30
double
oR;
//outer radius
31
double
h;
//height
32
double
m;
//mass
33
double
V;
//volume
34
CylinderEnd endType;
//Enum: endtype
35
string
m_material;
36
};
37
};
// namespace rigidbody
38
#endif
CEnvironment
Definition:
CEnvironment.h:10
rigidbody::CRigidBody
Definition:
CRigidBody.h:18
rigidbody::CRigidCylinder
Definition:
CRigidCylinder.h:16
reloadrepos
fhsim_base
src
rigidbody
CRigidCylinder.h
Generated by
1.9.4