Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
irigidbodymechanical.h
1 #pragma once
2 // irigidbodymechanical.h
3 
4 // Interface for functionality of all rigid mechanical bodies.
5 
6 namespace 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
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
unsigned int TType
class type indicator
Definition: basedef.h:41
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4
DAVect3 DAVect
Angular vector of doubles, either 2D or 3D.
Definition: dim.h:151
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:145
3D quaternion utility class.
Definition: quat.h:103