PassThrough
https://pointclouds.org/documentation/classpcl_1_1_pass_through.html
遍历整个输入一次,自动过滤非有限点和 setFilterLimits()
指定的区间之外的点,这仅适用于 setFilterFieldName()
指定的字段。
Constructor
new PCL.PassThrough(removed, pointType);
示例:
import * as PCL from 'pcl.js';
await PCL.init();
new PCL.PassThrough(PCL.PointXYZ, true);
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
pointType | PointType | PointXYZ | The point cloud type. |
extractRemovedIndices | boolean | false | Initializing with true will allow us to extract the removed indices. |
方法
setFilterFieldName()
setFilterFieldName(fieldName);
提供要用于过滤数据的字段的名称。
与 setFilterLimits()
结合使用,该字段的值超出此区间的点将被丢弃。
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
fieldName | string | Path to the blog content directory on the file system, relative to site dir. |
getFilterFieldName()
getFilterFieldName();
返回:
类型 | 描述 |
---|---|
string | Path to the blog content directory on the file system, relative to site dir. |
setFilterLimits()
setFilterLimits(min, max);
为过滤数据的字段设置数值限制。
与 setFilterFieldName()
结合使用,该字段的值超出此区间的点将被丢弃。
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
min | number | 0 | Path to the blog content directory on the file system, relative to site dir. |
max | number | 0 | Path to the blog content directory on the file system, relative to site dir. |
getFilterLimits()
getFilterLimits();
返回:
名称 | 类型 |
---|---|
limits | FilterLimits |
setNegative
setNegative(negative);
设置是应用点过滤的常规条件,还是应用倒置条件。
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
negative | boolean | false | false : normal filter behavior, true : inverted behavior. |
getNegative
getNegative();
setKeepOrganized
setKeepOrganized(keepOrganized);
设置过滤后的点是否应保留并设置为通过 setUserFilterValue
给出的值(默认值:NaN),或者从 PointCloud
中删除,从而可能破坏其组织结构。
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
keepOrganized | boolean | false | false : remove points, true : redefine points, keep structure. |
getKeepOrganized
getKeepOrganized(keepOrganized);
setUserFilterValue
setUserFilterValue(value);
提供一个值,过滤点应设置为而不是删除它们。
与setKeepOrganized()
一起使用。
参数:
名称 | 类型 | 默认值 | 描述 | |
---|---|---|---|---|
value | number | null | null | The user given value that the filtered point dimensions should be set to. |
setInputCloud
setInputCloud(cloud);
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
cloud | PointCloud | The point cloud data message |
getInputCloud
getInputCloud();
返回:
名称 | 类型 | 描述 |
---|---|---|
cloud | PointCloud | The point cloud data message |
filter
filter(cloud);
参数:
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
cloud (optional) | PointCloud | The point cloud data message |
返回:
名称 | 类型 | 描述 |
---|---|---|
cloud | PointCloud | The point cloud data message |
类型定义
FilterLimits
interface FilterLimits {
min: number;
max: number;
}