跳转到内容

UBot Conventions Library

C++
UUBotConventionsLibrary
父类
UBlueprintFunctionLibrary
类型
函数库
模块
UBotCore · UBotCore 0.1.2
头文件
Source/UBotCore/Public/UBotConventionsLibrary.h

在蓝图里使用 UE 与 ROS(REP-103)的坐标和时间约定,对应 C++ 的 UBot::Ros。

纯函数 · UUBotConventionsLibrary.CameraLinkToOpticalRotation

相机光学系(z 向前、x 向右、y 向下)相对相机 link 系的旋转,ROS 约定。

引脚方向类型
Return Value输出Quat结构体

纯函数 · UUBotConventionsLibrary.GetOpticalFrameSuffix

接在相机 frame id 后面、组成光学系 frame id 的后缀 _optical。

引脚方向类型
Return Value输出String

纯函数 · UUBotConventionsLibrary.RosTimeToSeconds

把 builtin_interfaces/Time 的 sec 和 nanosec 换成秒。nanosec 为负数时按 0 处理。

引脚方向类型默认值
Sec输入Integer0
Nanosec输入Integer0
Return Value输出Float (double)

纯函数 · UUBotConventionsLibrary.AngularVelocityROSToUE

角速度、力矩等轴向量(单位 rad/s),ROS 转 UE:(-x, y, -z)。

引脚方向类型
ROSRadians Per Second输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.PositionROSToUE

位置,ROS 的米转 UE 的厘米:(x, -y, z) × 100。

引脚方向类型
ROSMeters输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.RotationROSToUE

旋转四元数,ROS 转 UE:(x, y, z, w) 变为归一化的 (-x, y, -z, w)。

引脚方向类型
ROSRotation输入Quat结构体
Return Value输出Quat结构体

纯函数 · UUBotConventionsLibrary.TransformROSToUE

刚体变换,ROS 转 UE:旋转镜像,平移从米换成厘米,缩放丢弃。

引脚方向类型
ROSTransform输入Transform
Return Value输出Transform

纯函数 · UUBotConventionsLibrary.VectorROSToUE

已是 SI 单位的线性量,ROS 转 UE:(x, -y, z),不换算单位。

引脚方向类型
Value输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.YawROSToUE

平面航向角、扫描角或偏航角速度(弧度),ROS 转 UE:UE = -ROS。

引脚方向类型默认值
ROSRadians输入Float (double)0.0
Return Value输出Float (double)

纯函数 · UUBotConventionsLibrary.SanitizeRosName

生成合法的 ROS 名字片段:只保留 A-Z、a-z、0-9 和下划线,连续下划线合并,首字符是数字时加前缀下划线,结果不会为空。

引脚方向类型
Name输入String
Return Value输出String

纯函数 · UUBotConventionsLibrary.SecondsToRosTime

把秒换成 builtin_interfaces/Time 的 sec 和 nanosec。负数或非有限值得到 (0, 0)。

引脚方向类型默认值
Seconds输入Float (double)0.0
Sec输出Integer
Nanosec输出Integer

纯函数 · UUBotConventionsLibrary.AngularVelocityUEToROS

角速度、力矩等轴向量(单位 rad/s),UE 转 ROS:(-x, y, -z)。

引脚方向类型
UERadians Per Second输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.PositionUEToROS

位置,UE 的厘米转 ROS 的米:(x, -y, z) / 100。

引脚方向类型
UECentimeters输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.RotationUEToROS

旋转四元数,UE 转 ROS:(x, y, z, w) 变为归一化的 (-x, y, -z, w)。

引脚方向类型
UERotation输入Quat结构体
Return Value输出Quat结构体

纯函数 · UUBotConventionsLibrary.TransformUEToROS

刚体变换,UE 转 ROS:旋转镜像,平移从厘米换成米,缩放丢弃。

引脚方向类型
UETransform输入Transform
Return Value输出Transform

纯函数 · UUBotConventionsLibrary.VectorUEToROS

线速度、加速度、以米为单位的点等线性量,UE 转 ROS:(x, -y, z),不换算单位。

引脚方向类型
Value输入Vector
Return Value输出Vector

纯函数 · UUBotConventionsLibrary.YawUEToROS

平面航向角、扫描角或偏航角速度(弧度),UE 转 ROS:ROS = -UE。

引脚方向类型默认值
UERadians输入Float (double)0.0
Return Value输出Float (double)