文章目录
前言
1、在自动驾驶仿真调试以及测试过程中,我们经常会用到雷达的探测锥,能够很直观地看到目标是否在雷达探测范围内。
2、而在unreal engine中可视化探测锥体其实很简单,有两种方法,一种是通过创建蓝图的方法,一种是调用C++函数,这篇文章简单讲一下两种方法的实现。

一、C++实现方法
1、DrawDebugCone函数
其实就是Unreal engine用于绘制调试锥体的函数;
void DrawDebugCone(const UWorld* InWorld, FVector const& Origin, FVector const& Direction, float Length, float AngleWidth, float AngleHeight, int32 NumSides, FColor const& Color, bool bPersistentLines=false, float LifeTime=-1.f, uint8 DepthPriority = 0, float Thickness = 0.f)
| 参数名 | 描述 |
|---|---|
| InWorld | carla当前世界 |
| Origin | 探测锥的起始位置 |
| Direction | 探测锥的方向 |
| Length | 探测锥的长度,即探测的最远距离 |
| AngleWidth | 水平FOV` |
| AngleHeight | 垂直FOV` |
| NumSides | 探测射线的数量 |
| Color | 探测射线的颜色 |
| bPersistentLines | 是否不持久显示 |
| LifeTime | 生存周期,-1表示永久存在 |
| Thickness | 射线的粗细 |
2、carla工程修改
1)找到对应路径下的:\unrealengine\carla\Unreal\CarlaUE4\Plugins\Carla\Source\Carla\Sensor\Radar.h,在private加入函数定义void DrawRadarCone();,如下图所示:

2)找到对应路径下的:\UnrealEngine\carla\Unreal\CarlaUE4\Plugins\Carla\Source\Carla\Sensor\Radar.cpp,将#include "Runtime/Engine/Public/DrawDebugHelpers.h"添加到上方,如下图所示:

3)找到对应路径下的:\UnrealEngine\carla\Unreal\CarlaUE4\Plugins\Carla\Source\Carla\Sensor\Radar.cpp,将下述代码复制到Radar.cpp的最下方;


2929

被折叠的 条评论
为什么被折叠?



