Conscience Core
CscMember.h
Go to the documentation of this file.
1 /*
2  * CscMember.h
3  *
4  * Created on: 31 mai 2014
5  * Author: ilieszaoui
6  */
7 
8 #ifndef CSCMEMBER_H_
9 #define CSCMEMBER_H_
10 
11 #include <CscCommon.h>
12 #include "Axiomes/Csc3dTypes.h"
13 
14 using namespace conscience_core::axiomes;
15 
16 class CscMember {
17 public:
18  CscMember(int memberId, string memberNameIn,
19  float massIn, float frictionIn, float restitutionIn, float linearDampingIn, float angularDampingIn,
20  float widthIn, float heightIn, float lenghtIn,
21  float originXIn, float originYIn, float originZIn,
22  float eulerXIn, float eulerYIn, float eulerZIn,
23  float accXIn, float accYIn, float accZIn, const vector<const CscPolygon *> &polygonsIn);
24 
25  // Identity attributes
26 
27  int getId() const {
28  return memberId;
29  }
30 
31  const string &getName() const {
32  return memberName;
33  }
34 
35  // Physics attributes
36  float mass;
37  float friction;
38  float restitution;
41 
42  float width;
43  float height;
44  float lenght;
45 
47 
49 
50  const CscArea3d *getInitialBoundingBox() const;
51 
52  CscMember *getDuplicate() const;
53  string toString() const;
54  virtual ~CscMember();
55 
56  float getInitialYaw() const;
57  float getInitialPitch() const;
58  float getInitialRoll() const;
59 
60  const CscPoint3d &getInitialOrigin() const;
61 
63 
64  const vector<const CscPolygon *> &getPolygons() const;
65 
66 private:
67  const vector<const CscPolygon *> polygons;
68  int memberId;
69  string memberName;
70 
71  const CscArea3d *initialBoundingBox = nullptr;
72 };
73 
74 #endif /* CSCMEMBER_H_ */
CscMember::linearDamping
float linearDamping
Definition: CscMember.h:39
CscMember
Definition: CscMember.h:16
CscMember::friction
float friction
Definition: CscMember.h:37
conscience_core::axiomes::CscPoint3d
The CscPoint3d class represents a point in three-dimensional space. It is primarily used to denote a ...
Definition: Csc3dTypes.h:24
CscMember::initialEuler
const CscPoint3d * initialEuler
Definition: CscMember.h:62
conscience_core::axiomes
Definition: Csc2dTypes.cpp:9
conscience_core::axiomes::CscArea3d
Definition: Csc3dTypes.h:231
CscMember::lenght
float lenght
Definition: CscMember.h:44
CscMember::initialOrigin
const CscPoint3d * initialOrigin
Definition: CscMember.h:46
CscMember::height
float height
Definition: CscMember.h:43
CscMember::mass
float mass
Definition: CscMember.h:36
CscCommon.h
Csc3dTypes.h
CscMember::initialAcceleration
const CscPoint3d * initialAcceleration
Definition: CscMember.h:48
CscMember::angularDamping
float angularDamping
Definition: CscMember.h:40
CscMember::restitution
float restitution
Definition: CscMember.h:38
CscMember::width
float width
Definition: CscMember.h:42
CscMember::getName
const string & getName() const
Definition: CscMember.h:31
CscMember::getId
int getId() const
Definition: CscMember.h:27