nav_msgs/Path
消息用于描述一条路径信息。可以多设置几个坐标点,小车就会依次经过这些点。下面是消息格式
其中包含了header和poses两个部分:
- header:这个消息的头部信息,包括序列号seq、时间戳stamp和参考坐标系frame_id。
- poses:一组路径点位姿信息,包含多个header和pose;每一个位姿包括一个header和一个pose,其中pose是位姿信息,包括位置和方向。
header: seq: 0 stamp: secs: 0 nsecs: 0 frame_id: "map" poses: - header: seq: 0 stamp: secs: 0 nsecs: 0 frame_id: "map" pose: position: x: 0.0 y: 0.0 z: 0.0 orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0 - header: seq: 0 stamp: secs: 0 nsecs: 0 frame_id: "map" pose: position: x: 1.0 y: 1.0 z: 0.0 orientation: x: 0.0 y: 0.0 z: 0.0 w: 1.0
python实现:
import rospy from nav_msgs.msg import Path, PoseStamped from geometry_msgs.msg import Pose, Quaternion # 创建一个Path消息 path_msg = Path() # 设置消息头部信息 path_msg.header.stamp = rospy.Time.now() path_msg.header.frame_id = "map" # 创建两个位姿 pose1 = PoseStamped() pose2 = PoseStamped() # 设置位姿的header pose1.header = path_msg.header pose2.header = path_msg.header # 设置第一个位姿的位置 pose1.pose.position.x = 1.0 pose1.pose.position.y = 2.0 pose1.pose.position.z = 0.0 # 设置第一个位姿的方向 q1 = Quaternion() q1.x = 0.0 q1.y = 0.0 q1.z = 0.0 q1.w = 1.0 pose1.pose.orientation = q1 # 设置第二个位姿的位置 pose2.pose.position.x = 3.0 pose2.pose.position.y = 4.0 pose2.pose.position.z = 0.0 # 设置第二个位姿的方向 q2 = Quaternion() q2.x = 0.0 q2.y = 0.0 q2.z = 0.0 q2.w = 1.0 pose2.pose.orientation = q2 # 将两个位姿添加到路径消息中 path_msg.poses.append(pose1) path_msg.poses.append(pose2)
标签:msgs,0.0,pose,header,nav,position,msg,Path,位姿 From: https://www.cnblogs.com/mxleader/p/17284961.html