本文整理汇总了C++中costmap_2d::Costmap2D::getInscribedRadius方法的典型用法代码示例。如果您正苦于以下问题:C++ Costmap2D::getInscribedRadius方法的具体用法?C++ Costmap2D::getInscribedRadius怎么用?C++ Costmap2D::getInscribedRadius使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类costmap_2d::Costmap2D
的用法示例。
在下文中一共展示了Costmap2D::getInscribedRadius方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: footprintCost
double TableApproaches::footprintCost(const Eigen::Vector3f& pos, double scale){
double cos_th = cos(pos[2]);
double sin_th = sin(pos[2]);
std::vector<geometry_msgs::Point> scaled_oriented_footprint;
for(unsigned int i = 0; i < footprint_model.size(); ++i){
geometry_msgs::Point new_pt;
new_pt.x = pos[0] + (scale * footprint_model[i].x * cos_th - scale * footprint_model[i].y * sin_th);
new_pt.y = pos[1] + (scale * footprint_model[i].x * sin_th + scale * footprint_model[i].y * cos_th);
scaled_oriented_footprint.push_back(new_pt);
}
geometry_msgs::Point robot_position;
robot_position.x = pos[0];
robot_position.y = pos[1];
//check if the footprint is legal
double footprint_cost = world_model->footprintCost(robot_position, scaled_oriented_footprint, costmap.getInscribedRadius(), costmap.getCircumscribedRadius());
return footprint_cost;
}