Nav2 Navigation Stack - humble  humble
ROS 2 Navigation Stack
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
dwb_plugins::XYThetaIterator Class Reference
Inheritance diagram for dwb_plugins::XYThetaIterator:
Inheritance graph
[legend]
Collaboration diagram for dwb_plugins::XYThetaIterator:
Collaboration graph
[legend]

Public Member Functions

void initialize (const nav2_util::LifecycleNode::SharedPtr &nh, KinematicsHandler::Ptr kinematics, const std::string &plugin_name) override
 
void startNewIteration (const nav_2d_msgs::msg::Twist2D &current_velocity, double dt) override
 
bool hasMoreTwists () override
 
nav_2d_msgs::msg::Twist2D nextTwist () override
 

Protected Member Functions

bool isValidSpeed (double x, double y, double theta)
 Check to see whether the combined x/y/theta velocities are valid. More...
 
virtual bool isValidVelocity ()
 
void iterateToValidVelocity ()
 

Protected Attributes

int vx_samples_
 
int vy_samples_
 
int vtheta_samples_
 
KinematicsHandler::Ptr kinematics_handler_
 
std::shared_ptr< OneDVelocityIteratorx_it_
 
std::shared_ptr< OneDVelocityIteratory_it_
 
std::shared_ptr< OneDVelocityIteratorth_it_
 

Detailed Description

Definition at line 47 of file xy_theta_iterator.hpp.

Member Function Documentation

◆ isValidSpeed()

bool dwb_plugins::XYThetaIterator::isValidSpeed ( double  x,
double  y,
double  theta 
)
protected

Check to see whether the combined x/y/theta velocities are valid.

Returns
True if the magnitude hypot(x,y) and theta are within the robot's absolute limits

This is based on three parameters: min_speed_xy, max_speed_xy and min_speed_theta. The speed is valid if 1) The combined magnitude hypot(x,y) is less than max_speed_xy (or max_speed_xy is negative) AND 2) min_speed_xy is negative or min_speed_theta is negative or hypot(x,y) is greater than min_speed_xy or fabs(theta) is greater than min_speed_theta.

Definition at line 95 of file xy_theta_iterator.cpp.


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