视觉位姿配置
位置¶
<?xml version="1.0"?>
<robot name="mybox">
<link name="base_link">
<visual>
<origin xyz="0.1 0.2 0.3" rpy="0 0 0"></origin>
<geometry>
<box size="0.2 0.4 0.6"/>
</geometry>
</visual>
</link>
</robot>
Note
通过origin
标签来表示位置和姿态,其中xyz
表示的是位置信息。
xyz
属性值通过空格进行分隔,总共有三个值,分别代表了物体在参考坐标系
中空间坐标(x
,y
,z
)。
值得注意的是,物体不是一个点,是一个有空间体积的物体,而我们的坐标描述是一个点。
我们描述的坐标点,通常是物体的中心点坐标。
姿态¶
<?xml version="1.0"?>
<robot name="mybox">
<link name="base_link">
<visual>
<origin xyz="0 0 0" rpy="0.785 0 0"></origin>
<geometry>
<box size="0.2 0.4 0.6"/>
</geometry>
</visual>
</link>
</robot>
Note
通过origin
标签来表示位置和姿态,其中rpy
表示的是姿态信息。
rpy
属性值通过空格进行分隔,总共有三个值,分别代表了物体围绕自身坐标系
的x轴
,y轴
,z轴
旋转的弧度值。
自身坐标系
在没有设置旋转和平移时,默认是和参考坐标系重合的。
案例¶
1. 体会分别围绕x,y,z轴旋转¶
<origin xyz="0 0 0" rpy="0.785 0 0"></origin>
<origin xyz="0 0 0" rpy="0 0.785 0"></origin>
<origin xyz="0 0 0" rpy="0 0 0.785"></origin>
Tip
体会出旋转的方向和角度
2. 体会绕X,Y,Z三个轴旋转¶
<origin xyz="0 0 0" rpy="0 0 0"></origin>
<origin xyz="0 0 0" rpy="1.57 0 0"></origin>
<origin xyz="0 0 0" rpy="1.57 1.57 0"></origin>
<origin xyz="0 0 0" rpy="1.57 1.57 1.57"></origin>
Tip
以上长方体模型使用的是自定义的纹理cft.dae
文件。这个长方体的特点是,在长方体对应面会有箭头伸出来。主要是让我们对长方体在旋转过程中方位变化有立体感。
上图中不带箭头细小的rgb三条线是参考坐标系。
通过以上配置,要体会rpy旋转是围绕哪个轴转动。每转动一下,是围绕转动后的轴还是参考坐标系的轴进行旋转。