LineCircleOperation 线段圆圈处理工具

LineCircleOperation 算子用于线段圆圈处理。

类型 功能
LineToCircleDistance 用于计算线段到圆圈的最短距离。

LineToCircleDistance

将 LineCircleOperation 算子的类型选择 LineToCircleDistance,用于计算线段到圆圈的最短距离。

算子参数

  • trans:当线段和圆圈有多个交点时,确定交点。

    • True:选择圆圈中心点 pose 的 x 轴正方向的交点 。

    • False:选择圆圈中心点 pose 的 x 轴负方向的交点。

  • line_point:设置线上点在 3D 视图中的可视化属性。

    • icon_visOn 打开 line_point 可视化。

    • icon_visOff 关闭 line_point 可视化。

    • icon_size 设置 line_point 在 3D 视图中的比例。取值范围:[0.001,10] 。默认值:0.1 。

  • Circle_point:设置圆上点在 3D 视图中的可视化属性。

    • icon_visOn 打开 Circle_point 可视化。

    • icon_visOff 关闭 Circle_point 可视化。

    • icon_size 设置 Circle_point 在 3D 视图中的比例。取值范围:[0.001,10] 。默认值:0.1 。

  • 距离/distance:设置计算后结果的曝光属性。曝光后可与交互面板中输出工具“按钮”进行绑定。

    • icon_visOn 打开曝光。

    • icon_visOff 关闭曝光。

数据信号输入输出

输入:

  • line

    • 数据类型:Line

    • 输入内容:线段数据

  • circle

    • 数据类型:Circle

    • 输入内容:圆圈数据

输出:

  • line_point

    • 数据类型:Pose

    • 输出内容:线上点坐标数据

  • circle_point

    • 数据类型:Pose

    • 输出内容:圆圈上点坐标数据

  • distance

    • 数据类型:String

    • 输出内容:线段与圆圈的距离

功能演示

使用 LineCircleOperation 算子中 LineToCircleDistance,计算线段到圆圈的最短距离。

步骤1:算子准备

添加 Trigger 、Emit(2个) 、LineCircleOperation 算子至算子图。

步骤2:设置算子参数

  1. 设置 Emit 算子参数:

    • 算子名称→ Emit_line

    • 类型 → Line

    • p1 → 3 1.5 0 0 0 0

    • p2 → -1 1.5 0 0 0 0

    • 线段 → icon_visOn 可视

  2. 设置 Emit_1 算子参数:

    • 算子名称 → Emit_Circle

    • 类型 → circle

    • 坐标 → 1 0 0 0 0 0

    • 半径 → 1

    • 圆圈 → icon_visOn 可视

  3. 设置 LineCircleOperation 算子参数:

    • 类型 → LineToCircleDistance

    • line_point → icon_visOn 可视

    • line_circle → icon_visOn 可视

步骤3:连接算子

3d_LineCircleOperation

步骤4:运行

点击 RVS 运行按钮,触发 Trigger 算子。

运行结果

  1. 如下图所示,在日志视图中显示线段与圆圈的距离为 0.5m。

    3d_LineCircleOperation_log

  2. 在 3D 视图中分别显示 Emit(emit_line)、Emit_1(Emit_Circle)、LineCircleOperation 中 line_point、circle_point 的可视化结果。

    3d_LineCircleOperation_result