Class HomingLocalPlanner

Inheritance Relationships

Base Type

  • public nav2_core::Controller

Class Documentation

class HomingLocalPlanner : public nav2_core::Controller

Public Functions

HomingLocalPlanner() = default
~HomingLocalPlanner() override = default
void configure(const rclcpp_lifecycle::LifecycleNode::WeakPtr &parent, std::string name, std::shared_ptr<tf2_ros::Buffer> tf, std::shared_ptr<nav2_costmap_2d::Costmap2DROS> costmap_ros) override
void cleanup() override
void activate() override
void deactivate() override
geometry_msgs::msg::TwistStamped computeVelocityCommands(const geometry_msgs::msg::PoseStamped &pose, const geometry_msgs::msg::Twist &velocity, nav2_core::GoalChecker*) override
void setPlan(const nav_msgs::msg::Path &path) override
void setSpeedLimit(const double &speed_limit, const bool &percentage) override
rcl_interfaces::msg::SetParametersResult dynamicParametersCallback(std::vector<rclcpp::Parameter> parameters)

Protected Functions

template<typename P1, typename P2>
inline double distancePoints2d(const P1 &point1, const P2 &point2)
void simplifyGlobalPlan(std::vector<geometry_msgs::msg::PoseStamped> &plan, double simplify_separation)
bool pruneGlobalPlan(const std::shared_ptr<tf2_ros::Buffer> &tf, const geometry_msgs::msg::PoseStamped &global_pose, std::vector<geometry_msgs::msg::PoseStamped> &global_plan, double dist_behind_robot = 1)
void smoothPlan2d(std::vector<geometry_msgs::msg::PoseStamped> &global_plan_vec)
void updateViaPointsContainer(const std::vector<geometry_msgs::msg::PoseStamped> &transformed_plan, double min_separation_via, double min_separation_goal)
bool transformGlobalPlan(const std::shared_ptr<tf2_ros::Buffer> &tf, const std::vector<geometry_msgs::msg::PoseStamped> &global_plan, const geometry_msgs::msg::PoseStamped &global_pose, const nav2_costmap_2d::Costmap2D &costmap, const std::string &global_frame, double max_plan_length, std::vector<geometry_msgs::msg::PoseStamped> &transformed_plan)
double clip(double value, double lower, double upper)
void cart2Pol(double x, double y, double &deg, double &dist)
double angDiff(double alpha, double beta)
void poseError(double dx, double dy, double dyaw, double &rho, double &alpha, double &phi)
void homingControl(double rho, double alpha, double phi, double &v, double &omega)
Eigen::Vector3d R2ypr(const Eigen::Matrix3d &R)
double checkCollision(const std::vector<geometry_msgs::msg::PoseStamped> &transformed_plan, double check_dist)