RMVL  2.5.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到

提供坐标树维护、变换历史缓存和按时间查询能力 更多...

坐标变换缓存 的协作图:

struct  rm::lpss::tf::LookupResult
 坐标变换查询结果 更多...
class  rm::lpss::tf::Buffer
 线程安全的坐标变换缓存 更多...
class  rm::lpss::tf::Broadcaster
 动态坐标变换发布器 更多...
class  rm::lpss::tf::StaticBroadcaster
 静态坐标变换发布器 更多...
class  rm::lpss::tf::Listener
 坐标变换监听器 更多...

枚举

enum class  rm::lpss::tf::Status : uint8_t {
  rm::lpss::tf::Status::Ok , rm::lpss::tf::Status::InvalidArgument , rm::lpss::tf::Status::InvalidTransform , rm::lpss::tf::Status::MultipleParents ,
  rm::lpss::tf::Status::CycleDetected , rm::lpss::tf::Status::StaticDynamicConflict , rm::lpss::tf::Status::FrameNotFound , rm::lpss::tf::Status::ConnectivityError ,
  rm::lpss::tf::Status::ExtrapolationPast , rm::lpss::tf::Status::ExtrapolationFuture , rm::lpss::tf::Status::NoCommonTime , rm::lpss::tf::Status::TimestampOutOfRange
}
 坐标变换操作状态 更多...

函数

const char * rm::lpss::tf::to_string (Status status) noexcept
 获取坐标变换状态的稳定文本描述

详细描述

提供坐标树维护、变换历史缓存和按时间查询能力

TransformStamped 统一表示 \(T_{parent,child}\):child_frame_idheader.frame_id 中的位姿,同时也将 child 中的坐标映射到 parent。 Buffer::lookup(target, source) 返回 \(T_{target,source}\)。

枚举类型说明

◆ Status

enum class rm::lpss::tf::Status : uint8_t
strong

#include <rmvl/lpss/transform.hpp>

坐标变换操作状态

枚举值
Ok 

操作成功

InvalidArgument 

坐标系为空、父子同名或时间格式非法

InvalidTransform 

变换包含非有限值或零范数四元数

MultipleParents 

子坐标系已属于另一个父坐标系

CycleDetected 

新变换会在坐标树中形成环

StaticDynamicConflict 

同一条边被同时用作静态和动态变换

FrameNotFound 

坐标系不存在

ConnectivityError 

两个坐标系不在同一棵树中

ExtrapolationPast 

查询时间早于缓存最早时间

ExtrapolationFuture 

查询时间晚于缓存最新时间

NoCommonTime 

路径上的动态边没有公共时间区间

TimestampOutOfRange 

插入时间已超出当前历史缓存窗口

函数说明

◆ to_string()

const char * rm::lpss::tf::to_string ( Status status)
noexcept

#include <rmvl/lpss/transform.hpp>

获取坐标变换状态的稳定文本描述