bitrl & cuberl Documentation
Simulation engine for reinforcement learning agents
Loading...
Searching...
No Matches
diff_drive_robot_rods.h
Go to the documentation of this file.
1#ifndef DIFF_DRIVE_ROBOT_RODS_H
2#define DIFF_DRIVE_ROBOT_RODS_H
3
4#include "bitrl/bitrl_config.h"
5
6#ifdef BITRL_CHRONO
7
8#include <string>
9#include <memory>
10
11#include "chrono/physics/ChSystem.h"
12
14
15namespace bitrl
16{
17namespace rb::bitrl_chrono
18{
19
29class CHRONO_DiffDriveRobot_Rod_Short : public CHRONO_DiffDriveRobot_Part {
30public:
31 CHRONO_DiffDriveRobot_Rod_Short(const std::string& name,
32 std::shared_ptr<chrono::ChContactMaterial> mat,
33 chrono::ChSystem* system,
34 const chrono::ChVector3d& body_pos,
35 const chrono::ChQuaternion<>& body_rot,
36 std::shared_ptr<chrono::ChBodyAuxRef> chassis);
37
38 ~CHRONO_DiffDriveRobot_Rod_Short()=default;
39
41 virtual void init()override;
42
43private:
45 void translate(const chrono::ChVector3d& shift);
46
47};
48
58class CHRONO_DiffDriveRobot_Rod_Long : public CHRONO_DiffDriveRobot_Part {
59public:
60 CHRONO_DiffDriveRobot_Rod_Long(const std::string& name,
61 std::shared_ptr<chrono::ChContactMaterial> mat,
62 chrono::ChSystem* system,
63 const chrono::ChVector3d& body_pos,
64 const chrono::ChQuaternion<>& body_rot,
65 std::shared_ptr<chrono::ChBodyAuxRef> chassis);
66
67 virtual ~CHRONO_DiffDriveRobot_Rod_Long()=default;
68
70 virtual void init() override;
71
72
73
74private:
76 void translate(const chrono::ChVector3d& shift);
77};
78}
79}
80#endif
81#endif //DIFF_DRIVE_ROBOT_ROD_SHORT_H
Definition bitrl_consts.h:14