Class OmnidirectionalDriveModel

Class Documentation

class OmnidirectionalDriveModel

Sampled odometry model for an omnidirectional drive.

This class satisfies Beluga named requirements: MotionModel.

Public Types

using control_type = std::tuple<Sophus::SE2d, Sophus::SE2d>

Current and previous odometry estimates as motion model control action.

using state_type = Sophus::SE2d

2D pose as motion model state (to match that of the particles).

using param_type = OmnidirectionalDriveModelParam

Parameter type that the constructor uses to configure the motion model.

Public Functions

inline explicit OmnidirectionalDriveModel(const param_type &params)

Constructs an OmnidirectionalDriveModel instance.

Parameters:

params – Parameters to configure this instance. See beluga::OmnidirectionalDriveModelParam for details.

template<class Control, typename = common_tuple_type_t<Control, control_type>>
inline auto operator()(Control &&action) const

Computes a state sampling function conditioned on a given control action.

Template Parameters:

Control – A tuple-like container matching the model’s control_action_type.

Parameters:

action – Control action to condition the motion model with.

Returns:

a callable satisfying Beluga named requirements: StateSamplingFunction.