bitrl & cuberl Documentation
Simulation engine for reinforcement learning agents
Loading...
Searching...
No Matches
diff_drive_robot_wheels.h
Go to the documentation of this file.
1#ifndef DIFF_DRIVE_ROBOT_WHEELS_H
2#define DIFF_DRIVE_ROBOT_WHEELS_H
3
4#include "bitrl/bitrl_config.h"
5
6#ifdef BITRL_CHRONO
7
8#include <string>
9#include <memory>
10
12namespace bitrl{
13namespace rb::bitrl_chrono
14{
15
25class CHRONO_DiffDriveRobot_ActiveWheel : public CHRONO_DiffDriveRobot_Part {
26public:
27 CHRONO_DiffDriveRobot_ActiveWheel(const std::string& name,
28 std::shared_ptr<chrono::ChContactMaterial> mat,
29 chrono::ChSystem* system,
30 const chrono::ChVector3d& body_pos,
31 const chrono::ChQuaternion<>& body_rot,
32 std::shared_ptr<chrono::ChBodyAuxRef> chassis
33 );
34
35 // destructor
36 virtual ~CHRONO_DiffDriveRobot_ActiveWheel()=default;
37
39 virtual void init() override;
40
41private:
43 void translate(const chrono::ChVector3d& shift);
44};
45
55class CHRONO_DiffDriveRobot_PassiveWheel : public CHRONO_DiffDriveRobot_Part {
56public:
57 CHRONO_DiffDriveRobot_PassiveWheel(const std::string& name,
58
59 std::shared_ptr<chrono::ChContactMaterial> mat,
60 chrono::ChSystem* system,
61 const chrono::ChVector3d& body_pos,
62 const chrono::ChQuaternion<>& body_rot,
63 std::shared_ptr<chrono::ChBodyAuxRef> chassis
64 );
65 virtual ~CHRONO_DiffDriveRobot_PassiveWheel()=default;
66
68 virtual void init() override;
69
70private:
72 void translate(const chrono::ChVector3d& shift);
73
74};
75
76}
77}
78
79#endif //DIFF_DRIVE_ROBOT_ACTIVE_WHEEL_H
80#endif
Definition bitrl_consts.h:14