跳转到内容

uBot 3D LiDAR Sensor

C++
UUBot3DLidarSensorComponent
父类
UBot Sensor Component UUBotSensorComponent
类型
组件 · 可在 Components 面板添加 · 可作为蓝图父类
模块
UBotSensor · UBotSensor 0.1.1
头文件
Source/UBotSensor/Public/UBot3DLidarSensorComponent.h

3D 激光雷达:在水平和垂直视场内按通道发射射线,每次采样产生一帧 UBot Point Cloud Frame。

纯函数 · UUBot3DLidarSensorComponent.GetLatest3DLidarFrame

返回最近一帧点云,不会触发新的扫描。还没有采过样时为空。

引脚方向类型
Return Value输出UBot Point Cloud Frame对象引用

函数 · UUBot3DLidarSensorComponent.Sample3DLidar

手动扫描一次,得到有效帧时返回 true。

引脚方向类型
Return Value输出Boolean

在 Components 面板选中组件,在 Details 面板底部 Events 区点事件旁的 + 即可生成事件节点。

事件 · UUBot3DLidarSensorComponent.On3DLidarFrameReady

每次产生有效帧后触发,Frame 是这一帧点云。

引脚方向类型
Frame输出UBot Point Cloud Frame对象引用

未特别标注的属性:蓝图里只读,Details 面板里可以编辑。

属性类型默认值说明
Ignore OwnerbIgnoreOwner · 3D LiDAR|CollisionBooleantrue为 true 时射线忽略传感器所属的 Actor。
Ignored ActorsIgnoredActors · 3D LiDAR|CollisionActor对象引用数组—射线检测时额外忽略的 Actor。
Trace ChannelTraceChannel · 3D LiDAR|CollisionECollision Channel枚举ECC_Visibility射线检测使用的碰撞通道,默认 Visibility。
Trace ComplexbTraceComplex · 3D LiDAR|CollisionBooleanfalse为 true 时对复杂碰撞(逐三角面)做射线检测,开销更高。
Angular Grid Interval DegreesAngularGridIntervalDegrees · 3D LiDAR|Editor PreviewFloat15.0编辑器视口预览里角度辅助线的间隔,单位 °。仅编辑器使用。范围 1.0 – 90.0;蓝图不可访问,Details 可编辑
Distance Grid Interval MetersDistanceGridIntervalMeters · 3D LiDAR|Editor PreviewFloat5.0编辑器视口预览里距离辅助线的间隔,单位 m。仅编辑器使用。最小 0.1;蓝图不可访问,Details 可编辑
Range Preview ColorRangePreviewColor · 3D LiDAR|Editor PreviewLinear Color结构体(R=0.050000,G=0.650000,B=1.000000,A=1.000000)编辑器视口预览的颜色。仅编辑器使用。蓝图不可访问,Details 可编辑
Range Preview OpacityRangePreviewOpacity · 3D LiDAR|Editor PreviewFloat0.12编辑器视口预览填充的不透明度。仅编辑器使用。范围 0.0 – 1.0;蓝图不可访问,Details 可编辑
Show Range LabelsbShowRangeLabels · 3D LiDAR|Editor PreviewBooleantrue在编辑器视口预览里显示距离标签。仅编辑器使用。蓝图不可访问,Details 可编辑
Range Noise Std Dev MetersRangeNoiseStdDevMeters · 3D LiDAR|NoiseFloat0.0距离噪声的标准差,单位 m。需要同时开启 Noise Enabled,只作用于命中的射线。最小 0.0
Maximum Rays Per ScanMaximumRaysPerScan · 3D LiDAR|SafetyInteger65536单次扫描的射线数上限。通道数乘以每通道射线数超过它时,这次采样报错,不会截断。范围 1 – 1048576
Horizontal Fov DegreesHorizontalFovDegrees · 3D LiDAR|ScanFloat360.0水平视场,单位 °,范围 0.01 到 360,以传感器的 X 轴为中心。范围 0.01 – 360.0
Horizontal SamplesHorizontalSamples · 3D LiDAR|ScanInteger360每个通道的射线数,范围 1 到 8192。水平视场为 360° 时首尾不重复。范围 1 – 8192
Maximum Range MetersMaximumRangeMeters · 3D LiDAR|ScanFloat100.0最大量程,单位 m,必须大于最小量程。最小 0.01
Minimum Range MetersMinimumRangeMeters · 3D LiDAR|ScanFloat0.1最小量程,单位 m。距离更近的命中不产生点。最小 0.0
Number Of ChannelsNumberOfChannels · 3D LiDAR|ScanInteger16垂直方向的通道数,范围 1 到 256,在向下到向上的视场内均匀分布。范围 1 – 256
Vertical Fov Down DegreesVerticalFovDownDegrees · 3D LiDAR|ScanFloat15.0向下的垂直视场,单位 °,范围 0 到 90。范围 0.0 – 90.0
Vertical Fov Up DegreesVerticalFovUpDegrees · 3D LiDAR|ScanFloat15.0向上的垂直视场,单位 °,范围 0 到 90。范围 0.0 – 90.0
Enable Smoke InterferencebEnableSmokeInterference · 3D LiDAR|SmokeBooleantrue为 true 时,感知介质(烟雾)会截断射线。
Smoke Cell Radius ScaleSmokeCellRadiusScale · 3D LiDAR|SmokeFloat1.0烟雾单元半径的缩放倍数,至少 0.01。最小 0.01
Smoke Density ThresholdSmokeDensityThreshold · 3D LiDAR|SmokeFloat0.05有效密度(Density 乘以 Edge Factor)低于它的烟雾单元被忽略。范围 0.0 – 1.0
Smoke Volume Actor TagSmokeVolumeActorTag · 3D LiDAR|SmokeNameAgentSensor.SmokeVolume旧版标签路径用的 Actor 标签,默认 AgentSensor.SmokeVolume。设为 None 只关闭旧版路径,接口路径不受影响。
Frame Id继承FrameId · uBot SensorStringlidar_3d父类默认 ""帧头里的 Frame Id,为空时使用 Sensor Id。默认 lidar_3d。
Sensor Id继承SensorId · uBot SensorStringlidar_3d父类默认 ""帧头里的 Sensor Id,为空时使用组件名。默认 lidar_3d。

来自 UBot Sensor Component

节点
属性