Buffer 缓冲元素
Buffer 算子为缓冲元素,用于暂时存放数据。 适用类型有:Cube 、Image 、JointArray 、PointCloud 、PolyData 、Pose 。
类型 | 功能 |
---|---|
Cube | 缓冲立方体。 |
Image | 缓冲图像。 |
JointArray | 缓冲机器人关节弧度值。 |
PointCloud | 缓冲点云。 |
PolyData | 缓冲 3D 模型。 |
PosePose | 缓冲坐标。 |
Cube
将 Buffer 算子的 类型
选择 Cube ,用于缓冲立方体。
算子参数
是否为列表/is_list
:数据类型: bool 。是否将算子数据输入输出端口变为列表形式。True:元素类型变为 cube_list。
False:元素类型为 cube。
立方体/cube
:设置当前输入的立方体在 3D 视图中的可视化属性。打开立方体可视化。
关闭立方体可视化。
设置立方体的颜色。取值范围:[-2,360] 。默认值:-2 。
设置立方体的透明度。取值范围:[0,1] 。默认值:0.5 。
上一个立方体/last_cube
:设置缓冲的立方体在 3D 视图中的可视化属性。参数值描述与立方体
一致。
数据信号输入输出
输入:
立方体
:数据类型:Cube
输入内容:立方体数据
输出:
立方体
:数据类型:Cube
输出内容:当前输入的立方体数据
上一个立方体
:数据类型:Cube
输出内容:缓冲的立方体数据
功能演示
使用 Buffer 算子中立方体
,缓冲上次加载的立方体,正常加载本次的立方体。
步骤1:算子准备
添加 Trigger、Load、Buffer 算子至算子图。
步骤2:设置算子参数
设置 Load 算子参数:
类型 → 立方体
文件 → →选择cube 文件名( example_data/cube/cube.txt )
设置 Buffer 算子参数:
类型 → 立方体
立方体 → 可视
上一个立方体 → 可视 → 200
步骤3:连接算子
步骤4:运行
点击运行按钮,触发 Trigger 算子。
重新选择 Load 算子中 filename 属性 → example_data/cube/cube1.txt,再次触发Trigger。
运行结果
结果显示如下,在 3D 视图中显示上次加载的 last_cube 缓冲数据和本次加载的 cube 数据。蓝色立方体: last_cube 。
Image
将 Buffer 算子的 类型
选择图像
,用于缓冲图像。
算子参数
是否为列表/is_list
:数据类型为:bool 。设置是否将算子数据输入输出端口变为列表形式。True:元素类型变为 image_list。
False:元素类型为 image 。
图像/image
:设置当前输入的图像在 2D 视图中的可视化属性。打开图像可视化。
关闭图像可视化。
上一个图像/last_image
:设置缓冲的图片在 2D 视图中的可视化属性。参数值描述与图像
一致。
数据信号输入输出
输入:
图像
:数据类型:Image
输入内容:图像数据
输出:
图像
:数据类型:Image
输出内容:当前输入的图像数据
上一个图像
:数据类型:Image
输出内容:缓冲的图像数据
功能演示
将 Buffer 算子的 type 选择图像
,缓冲上次加载的图像,正常加载本次的图像。
步骤1:算子准备
添加 Trigger 、Load 、Buffer 算子至算子图。
步骤2:设置算子参数
设置 Load 算子参数:
类型 →图像
文件 → → 选择图像文件名 (example_data/images/cat.png)
设置 Buffer 算子参数:
类型 → 图像
图像 → 可视
上一个图像 → 可视
步骤3:连接算子
步骤4:运行
点击运行按钮,触发 Trigger 算子。
重新选择 Load 算子中 filename 属性 → example_data/images/dog .png。
再次触发 Trigger 。
运行结果
结果显示如下,在 2D 视图显示上次加载的 last_image 缓冲图像和本次加载的 image 图像。
JointArray
将 Buffer 算子的 类型
选择关节
,用于缓冲机器人关节弧度值。
算子参数
是否为列表/is_list
:数据类型: bool 。设置是否将算子数据输入输出端口变为列表形式。True:元素类型变为 joint_list 。
False:元素类型为 joint。
数据信号输入输出
输入:
关节
:数据类型:JointArray
输入内容:机器人关节弧度值数据 J0 J1 J2 J3 J4 J5
输出:
关节
:数据类型:JointArray
输出内容:当前输入的机器人关节弧度值数据
上一个关节
:数据类型:JointArray
输出内容:缓冲的机器人关节弧度值数据
功能演示
使用 Buffer 算子中 JointArray ,缓冲上次的机器人关节弧度值,正常加载本次的机器人关节弧度值。
步骤1:算子准备
添加 Trigger 、Load 、Buffer 算子至算子图。
步骤2:设置算子参数
设置 Load 算子参数:
类型 → 关节
文件 → →选择机器人关节值文件名(example_data/joints/ joints.txt)
设置 Buffer 算子参数:
类型 → 关节
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
重新选择 Load 算子中 filename 属性→example_data/joints/ joints1.txt,再次触发 Trigger。
运行结果
如下图所示,上次加载的 last_joint 缓冲和本次加载的 joint ,数据端口输出显示如下。
鼠标放置在 joint 处,数据端口输出显示如下所示。
鼠标放置在 last_joint处,数据端口输出显示如下所示。
PointCloud
将 Buffer 算子的 类型
选择点云
,用于缓冲点云。
算子参数
是否为列表/is_list
:数据类型: bool 。设置是否将算子输入输出端口变为列表形式。True:元素类型变为 cloud_list。
False:元素类型为 cloud。
点云/cloud
:设置当前输入点云在 3D 视图中的可视化属性。打开点云可视化。
关闭点云可视化。
设置 3D 视图中点云的颜色。取值范围:[-2,360] 。默认值:-1 。
设置点云中点的尺寸。取值范围:[1,50] 。默认值:1 。
上一个点云/last_cloud
:设置缓冲点云在 3D 视图中的可视化属性。参数值描述与点云
一致。
数据信号输入输出
输入:
点云
:数据类型:PointCloud
输入内容:点云数据
输出:
点云
:数据类型:PointCloud
输出内容:当前输入的点云数据
上一个点云
:数据类型:PointCloud
输出内容:缓冲的点云数据
功能演示
本节将使用 Buffer 算子中点云
,缓冲上次加载的点云,正常加载本次点云。这与 Buffer 算子中 Cube 属性的缓冲立方体的方法相同,请参照该章节的功能演示。
PolyData
将 Buffer 算子的 类型
选择多边形
,用于缓冲 3D 模型。
算子参数
是否为列表/is_list
:数据类型: bool 。设置是否将算子数据输入输出端口变为列表形式。True:元素类型变为 polydata_list。
False:元素类型为 polydata。
多边形/polydata
:设置当前输入的 3D 模型在 3D 视图中的可视化属性。打开 3D 模型可视化。
关闭 3D 模型可视化。
上一个多边形/last_polydata
:设置缓冲的 3D 模型在 3D 视图中的可视化属性。参数值描述与多边形
一致。
数据信号输入输出
输入:
多边形
:数据类型:PolyData
输入内容:3D 模型数据
输出:
多边形
:数据类型:PolyData
输出内容:当前输入的 3D 模型数据
上一个多边形
:数据类型:PolyData
输出内容:缓冲的 3D 模型数据
功能演示
本节使用 Buffer 算子中多边形
,缓冲加载上次的 3D 模型,正常加载本次的 3D 模型。这与 Buffer 算子中 Cube 属性的缓冲立方体的方法相同,请参照该章节的功能演示。
Pose
将 Buffer 算子的 类型
选坐标
,用于缓冲坐标。
算子参数
是否为列表/is_list
:数据类型: bool 。设置是否将算子数据输入输出端口变为列表形式。True:元素类型变为 pose_list 。
False:元素类型为 pose 。
坐标/pose
:设置当前输入的 pose 在 3D 视图中的可视化属性。打开 pose 可视化。
关闭 pose 可视化。
设置 pose 的尺寸大小。取值范围:[0.001,10] 。默认值:0.1 。
上一个坐标/last_pose
:设置缓冲的 pose 在 3D 视图中的可视化属性。参数值描述与坐标
一致。
数据信号输入输出
输入:
坐标
:数据类型:Pose
输入内容:pose 数据
输出:
坐标
:数据类型:Pose
输出内容:当前输入的 pose 数据
上一个坐标
:数据类型:Pose
输出内容:缓冲的 pose 数据
功能演示
本节将使用 Buffer 算子中坐标
,缓冲加载上次的 pose 数据,正常加载本次的 pose 数据。这与 Buffer 算子中 Cube 属性的缓冲立方体的方法相同,请参照该章节的功能演示。