22 #include <boost/tuple/tuple.hpp> 25 #include "geometry_msgs/Pose.h" 108 nav_msgs::Path
getNavigationPath(
const geometry_msgs::Point &sourcePosition,
const geometry_msgs::Point &targetPosition,
double sourceRotationBase,
double targetRotationBase);
109 nav_msgs::Path
getNavigationPath(
const geometry_msgs::Point &sourcePosition,
const geometry_msgs::Point &targetPosition);
136 bool isPositionReachable(
const geometry_msgs::Point &sourcePosition,
const geometry_msgs::Point &targetPosition);
149 float getDistance(
const geometry_msgs::Point &sourcePosition,
const geometry_msgs::Point &targetPosition);
bool isPositionReachable(const geometry_msgs::Point &sourcePosition, const geometry_msgs::Point &targetPosition)
boost::shared_ptr< MILDRobotModel > MILDRobotModelPtr
float speedFactorBaseMove
std::string mFrameName_mild_ptu_tilt_link_rotated
std::string mFrameName_map
boost::tuple< float, float > mRotationLimits
float getBase_TranslationalMovementCosts(const RobotStatePtr &sourceRobotState, const RobotStatePtr &targetRobotState)
Calculates the movement costs from sourceRobotState to targetRobotState. Returns -1 if pose is not re...
ros::ServiceClient navigationCostClient
MILDRobotModel implements a model of pan tilt unit robot.
std::string mFrameName_mild_base
float getBase_RotationalMovementCosts(const RobotStatePtr &sourceRobotState, const RobotStatePtr &targetRobotState)
void setRotationAngleLimits(float minAngleDegrees, float maxAngleDegrees)
sets the angle limits of the rotation angle.
Eigen::Matrix< Precision, 3, 1 > SimpleVector3
geometry_msgs::Pose calculateCameraPose(const RobotStatePtr &sourceRobotState)
Uses a given RobotState to calculate the camera frame.
void setPanAngleLimits(float minAngleDegrees, float maxAngleDegrees)
sets the angle limits of the pan angle.
DebugHelperPtr mDebugHelperPtr
bool isPoseReachable(const SimpleVector3 &position, const SimpleQuaternion &orientation)
geometry_msgs::Pose getRobotPose()
nav_msgs::Path getNavigationPath(const geometry_msgs::Point &sourcePosition, const geometry_msgs::Point &targetPosition, double sourceRotationBase, double targetRotationBase)
boost::tuple< float, float > mPanLimits
this namespace contains all generally usable classes.
void setTiltAngleLimits(float minAngleDegrees, float maxAngleDegrees)
sets the angle limits of the tilt angle.
std::string mFrameName_mild_ptu_pan_link_rotated
tf::TransformListener listener
float getPTU_TiltMovementCosts(const RobotStatePtr &sourceRobotState, const RobotStatePtr &targetRobotState)
float getDistance(const geometry_msgs::Point &sourcePosition, const geometry_msgs::Point &targetPosition)
std::string mFrameName_mild_ptu_pan_link
std::string mFrameName_mild_ptu_base_link
boost::tuple< float, float > mTiltLimits
void initMapHelper()
Init MapHelper if it is not initialized yet.
std::string mFrameName_mild_camera_left
std::string mFrameName_mild_ptu_tilt_link
geometry_msgs::Pose getCameraPose()
MILDRobotModel()
constructor of the MILDRobotModel
bool isPositionAllowed(const geometry_msgs::Point &position)
virtual ~MILDRobotModel()
destructor of the MILDRobotModel
std::string mFrameName_mild_camera_right
float getPTU_PanMovementCosts(const RobotStatePtr &sourceRobotState, const RobotStatePtr &targetRobotState)
MapHelperPtr mMapHelperPtr
Eigen::Quaternion< Precision > SimpleQuaternion
std::string mFrameName_mild_camera_mount_link
RobotModel generalizes a robot model.