Itasca C++ Interface
Loading...
Searching...
No Matches
irigidbodymechanical.h
1#pragma once
2// irigidbodymechanical.h
3
4// Interface for functionality of all rigid mechanical bodies.
5
6namespace itascaxd {
8 public:
10 inline static const TType type_ = 0x4eb6dfcd;
11
12#ifdef TWOD
13 virtual double getAngDisplacement() const=0;
14#endif
15 virtual DVect getCentroid() const=0;
16 virtual DVect getVelocity() const=0;
17 virtual DAVect getAngVelocity() const=0;
18 virtual DVect getDisplacement() const=0;
19 virtual double getVolume() const=0;
20 virtual Quat getOrient() const=0;
21
22#ifdef TWOD
23 virtual void setAngDisplacement(const double &v)=0;
24#endif
25 virtual void setCentroid(const DVect &p)=0;
26 virtual void setVelocity(const DVect &p)=0;
27 virtual void setAngVelocity(const DAVect &p)=0;
28 virtual void setDisplacement(const DVect &v)=0;
29 virtual void setOrient(const Quat &q)=0;
30#ifdef THREED
31 virtual DVect getEulerFromOrient() const=0;
32 virtual void setOrientFromEuler(const DVect3 &d)=0;
33 virtual void setOrientFromAAngle(const DVect3 &d)=0;
34#endif
35
36 };
37
38} // namespace itascaxd
39// EoF
3D quaternion utility class.
Definition quat.h:108
Definition irigidbodymechanical.h:7
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition irigidbodymechanical.h:10
uint32 TType
class type indicator
Definition basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
DAVect3 DAVect
Angular vector of doubles, either 2D or 3D.
Definition dim.h:162
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4