AdjustBox 调整箱子姿态
AdjustBox 算子用于调整箱子 cube 的姿态 pose,在保持箱子位置不变的前提下,将箱子的姿态 pose 调整到便于机械臂抓取。
算子参数
-
选择箱子/select_box
:将满足所选条件的箱子进行调整,不满足所选条件的箱子保持不变。-
all_boxes:调整所有的箱子。
-
square_boxes:只调整正方形箱子,即 width 和 height 相差小于5%的箱子。
-
width > height:只调整 width > height 的箱子,即 x 轴对应的边长 > y 轴对应的边长。
-
height > width:只调整 height > width 的箱子,即 y 轴对应的边长 > x 轴对应的边长。
-
width > depth:只调整 width > depth 的箱子,即 x 轴对应的边长 > z 轴对应的边长。
-
depth > width:只调整 depth > width 的箱子,即 z 轴对应的边长 > x 轴对应的边长。
-
height > depth:只调整 height > depth 的箱子,即 y 轴对应的边长 > z 轴对应的边长。
-
depth > height:只调整 depth > height 的箱子,即 z 轴对应的边长 > y 轴对应的边长。
-
-
调整模式/adjust_mode
:选择调整的方式。-
transform_pose:以箱子的 pose 为基准,根据 adjust_pose 的 rx、ry、rz 参数依次旋转。参数一般设置为 π/2 的整数倍,若不等于 π/2 的整数倍则默认调整到最接近的 nπ/2。
-
reference_pose:将箱子的 pose 调整到最接近参数 adjust_pose 的姿态上。
-
-
调整坐标/adjust_pose
:设置调整的姿态。只参照 rx、ry、rz 的值,x、y、z 的值忽略。 -
立方体/cube
:设置 cube 在 3D 视图中的可视化属性。-
打开立方体可视化。
-
关闭立方体可视化。
-
设置立方体的颜色。取值范围:[-2,360] 。默认值:-2 。
-
设置立方体的透明度。取值范围:[0,1] 。默认值:0.5 。
-
-
坐标/pose
:设置 pose 在 3D 视图中的可视化属性。-
打开 pose 可视化。
-
关闭 pose 可视化。
-
设置 pose 的尺寸大小。取值范围:[0.001,10] 。默认值:0.1 。
-
-
立方体列表/cube_list
:设置 cube 列表在 3D 视图中的可视化属性。参数值描述与立方体
一致。 -
坐标列表/pose_list
:设置 pose 列表在 3D 视图中的可视化属性。参数值描述与坐标
一致。
数据信号输入输出
输入:
-
cube
:-
数据类型:Cube
-
输入内容:立方体数据
-
-
cube_list
:-
数据类型:CubeList
-
输入内容:立方体列表数据
-
输出:
-
cube
:-
数据类型:Cube
-
输出内容:调整后的箱子
-
-
pose
:-
数据类型:Pose
-
输出内容:调整后箱子的姿态
-
-
cubelist
:-
数据类型:CubeList
-
输出内容:调整后的箱子列表
-
-
poselist
:-
数据类型:PoseList
-
输出内容:调整后箱子的姿态列表
-
功能演示
使用 AdjustBox 算子调整箱子的姿态。
步骤1:算子准备
添加 Trigger 、Emit 、AdjustBox 算子至算子图。
步骤2:设置算子参数
-
设置 Emit 算子参数:
-
算子名称 → EmitCube
-
类型 → Cube
-
坐标→ 0.5 0.5 0 0.6 0.8 1.2
-
宽度→ 0.5
-
高度→ 0.3
-
深度 → 0.01
-
立方体 → 可视
-
-
设置 AdjustBox 算子参数:
-
选择箱子 → all_boxes
-
调整模式 → transform_pose
-
调整坐标 → 0 0 0 0 0 1.5708
-
立方体 → 可视
-
坐标 → 可视
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
打开 EmitCube 算子的
立方体
和坐标
可视化属性值。3D 视图显示如下: -
关闭 EmitCube 算子的
立方体
和坐标
可视化属性值。 -
打开 AdjustBox 算子的
立方体
和坐标
可视化。在 3D 视图中显示 AdjustBox 算子的结果。调整后的箱子 pose 由原姿态绕 z 轴旋转 90° 。