Flatland
Public Attributes | List of all members
flatland_plugins::TricycleDrive Class Reference
Inheritance diagram for flatland_plugins::TricycleDrive:
Inheritance graph
[legend]
Collaboration diagram for flatland_plugins::TricycleDrive:
Collaboration graph
[legend]

Public Member Functions

OnInitialize

initialize the bicycle plugin

Parameters
world_fileThe path to the world.yaml file
void OnInitialize (const YAML::Node &config) override
 The method for the particular model plugin to override and provide its own initialization. More...
 
void ComputeJoints ()
 This is a helper function that is used to valid and extract parameters from joints. More...
 
BeforePhysicsStep

override the BeforePhysicsStep method

Parameters
[in]configThe plugin YAML node
void BeforePhysicsStep (const Timekeeper &timekeeper) override
 This method is called before the Box2D physics step. More...
 
TwistCallback

callback to apply twist (velocity and omega)

Parameters
[in]timestephow much the physics time will increment
void TwistCallback (const geometry_msgs::Twist &msg)
 
- Public Member Functions inherited from flatland_server::ModelPlugin
ModelGetModel ()
 Get model.
 
void Initialize (const std::string &type, const std::string &name, Model *model, const YAML::Node &config)
 The method to initialize the ModelPlugin, required since Pluginlib require the class to have a default constructor. More...
 
bool FilterContact (b2Contact *contact, Entity *&entity, b2Fixture *&this_fixture, b2Fixture *&other_fixture)
 Helper function check if this model is part of the contact, and extracts all the useful information. More...
 
bool FilterContact (b2Contact *contact)
 Helper function check if this model is part of the contact. More...
 
- Public Member Functions inherited from flatland_server::FlatlandPlugin
const PluginType Type ()
 
const std::string & GetName () const
 Get plugin name.
 
const std::string & GetType () const
 Get type of plugin.
 
virtual void AfterPhysicsStep (const Timekeeper &timekeeper)
 This method is called after the Box2D physics step. More...
 
virtual void BeginContact (b2Contact *contact)
 A method that is called for all Box2D begin contacts. More...
 
virtual void EndContact (b2Contact *contact)
 A method that is called for all Box2D end contacts. More...
 
virtual void PreSolve (b2Contact *contact, const b2Manifold *oldManifold)
 A method that is called for Box2D presolve. More...
 
virtual void PostSolve (b2Contact *contact, const b2ContactImpulse *impulse)
 A method that is called for Box2D postsolve. More...
 
virtual ~FlatlandPlugin ()=default
 Flatland plugin destructor.
 

Public Attributes

Bodybody_
 
Jointfront_wj_
 front wheel joint
 
Jointrear_left_wj_
 rear left wheel joint
 
Jointrear_right_wj_
 rear right wheel joint
 
double axel_track_
 normal distrance between the rear two wheels
 
double wheelbase_
 distance between the front and rear wheel
 
b2Vec2 rear_center_
 middle point between the two rear wheels
 
bool invert_steering_angle_
 whether to invert steering angle
 
double max_angular_velocity_
 The max angular velocity.
 
double target_wheel_angle_
 The current target wheel angle.
 
double theta_f_
 The current angular offset of the front wheel.
 
geometry_msgs::Twist twist_msg_
 
nav_msgs::Odometry odom_msg_
 
nav_msgs::Odometry ground_truth_msg_
 
ros::Subscriber twist_sub_
 
ros::Publisher odom_pub_
 
ros::Publisher ground_truth_pub_
 
UpdateTimer update_timer_
 
default_random_engine rng_
 
array< normal_distribution< double >, 6 > noise_gen_
 
- Public Attributes inherited from flatland_server::ModelPlugin
ros::NodeHandle nh_
 ROS node handle.
 
- Public Attributes inherited from flatland_server::FlatlandPlugin
std::string type_
 type of the plugin
 
std::string name_
 name of the plugin
 
ros::NodeHandle nh_
 
PluginType plugin_type_
 

Additional Inherited Members

- Public Types inherited from flatland_server::FlatlandPlugin
enum  PluginType { Invalid, Model, World }
 
- Protected Member Functions inherited from flatland_server::ModelPlugin
 ModelPlugin ()=default
 Model plugin default constructor.
 

Member Function Documentation

void flatland_plugins::TricycleDrive::BeforePhysicsStep ( const Timekeeper timekeeper)
overridevirtual

This method is called before the Box2D physics step.

Parameters
[in]timekeeperprovide time related information

Reimplemented from flatland_server::FlatlandPlugin.

void flatland_plugins::TricycleDrive::ComputeJoints ( )

This is a helper function that is used to valid and extract parameters from joints.

< wheel anchor point, must be (0,0)

< body anchor point

void flatland_plugins::TricycleDrive::OnInitialize ( const YAML::Node &  config)
overridevirtual

The method for the particular model plugin to override and provide its own initialization.

Parameters
[in]configThe plugin YAML node

Implements flatland_server::FlatlandPlugin.


The documentation for this class was generated from the following files: