探测触碰
功能介绍
模块位置:定位-探测触碰
利用一个射线,沿着射线方向不断延长,探测初始触碰到的点云数据;或者利用一个平面,沿着其法向量方向不断平移,探测初始触碰到的点云数据。
探测方法
| 探测方法 | 输入 | 输出 | 说明 |
|---|---|---|---|
| 探测射线 | ![]() | ![]() | 沿着射线方向不断延长,探测初始触碰到的点云数据 |
| 探测初始平面 | ![]() | ![]() | 沿着平面法向量方向不断平移,探测初始触碰到的点云数据 |
使用场景
用于测量时的定位,触碰到的点云数据作为基准
基础输入
| 输入 | 类型 | 说明 |
|---|---|---|
| 输入点云 | 点云 | 探测的对象 |
| 区域3D | / | 通过绘制或继承ROI区域3D,得到目标点云的有效探测区域。输入区域 查看详细说明:区域类型、区域列表、启用坐标系、坐标系 |
探测方法:探测射线
输入
| 输入 | 类型 | 说明 |
|---|---|---|
| 探测射线 | 3D直线 | 3D直线作为射线,射线方向为3D直线起点指向终点的方向 |
参数说明
1.射线步长
探测射线从直线的终止点开始延长,每次延长的距离作为步长
2.射线延长步数
探测射线从直线的终止点开始延长,延长的最大步数,如果提前触碰成功,则射线停止延长
3.触碰距离阈值
探测射线不断延长,点云与射线延长方向的最前端的距离阈值,在该阈值内则认为触碰到了
4.触碰点数量阈值
触碰距离阈值内的点数量必须大于等于该阈值,则认为触碰成功;否则射线继续延长尝试触碰,直到延长步数耗尽;
如果在射线延长的过程中,有较少的杂点干扰,可将该阈值提高,将射线的触碰目标集中在被测物点云上
探测方法:探测初始平面
输入
| 输入 | 类型 | 说明 |
|---|---|---|
| 探测初始平面 | 平面 | 该平面作为初始平面,沿着法向量方向平移,触碰点云 |
参数说明
1.触碰距离阈值
初始平面沿着其法向量方向不断平移,有效区域内的点云到平面的距离排序后,以该阈值在距离中截取数据,阈值内则认为是触碰到的点集
2.触碰点数量阈值
触碰距离阈值内的点数量必须大于等于该阈值,则认为触碰成功;
如果在平面平移触碰过程中,有较少的杂点干扰,可将该阈值提高,将平面的触碰目标集中在被测物点云上
输出
| 输出 | 类型 | 默认启用 | 额外启用条件 | 说明 |
|---|---|---|---|---|
| 区域列表 | 3D区域指针集 | 是 | / | / |
| 探测距离列表 | 实数列表 | 是 | / | 触碰到的点集到射线最前端或平面的距离列表,是一个有序列表,第一个值为最近点距离,最后一个值为最远点距离 |
| 触碰点集 | 3D点集 | 是 | / | 射线或平面触碰到的点云数据,是一个“有序”列表,第一个点是触碰到的最近点,最后一个点值触碰到的最远点 |
| 触碰点集中心点 | 3D点 | 是 | / | 触碰点集的平均点 |
| 触碰点集最近点 | 3D点 | 是 | / | 探测触碰到的最近点 |
| 触碰点数量 | 整数 | 是 | / | / |
| 触碰平面 | 平面 | 是 | 探测方法为初始探测平面 | 平面触碰点云成功后,触碰点集中距离平面最近的点所在的平面 |



