![]() |
RMVL
1.1.0
RoboMaster Vision Library
|
神符(能量机关) 更多...
#include <rmvl/combo/rune.h>
Public 类型 | |
| using | ptr = std::shared_ptr< Rune > |
| using | const_ptr = std::shared_ptr< const Rune > |
Public 类型 继承自 rm::combo | |
| using | ptr = std::shared_ptr< combo > |
| using | const_ptr = std::shared_ptr< const combo > |
Public 成员函数 | |
| Rune (RuneTarget::ptr p_target, RuneCenter::ptr p_center, const GyroData &gyro_data, double tick) | |
| Rune (const Rune &)=delete | |
| Rune (Rune &&)=delete | |
| float | getFeatureDis () const |
| 3D 空间下神符特征间距 更多... | |
| bool | isActive () |
| 是否激活 更多... | |
Public 成员函数 继承自 rm::combo | |
| virtual | ~combo ()=0 |
| float | getHeight () const |
| 获取组合体高度 更多... | |
| float | getWidth () const |
| 获取组合体宽度 更多... | |
| float | getAngle () const |
| 获取组合体角度 更多... | |
| cv::Point2f | getCenter () const |
| 获取组合体中心点 更多... | |
| const std::vector< cv::Point2f > & | getCorners () const |
| 获取组合体角点 更多... | |
| const CameraExtrinsics< float > & | getExtrinsics () const |
| 获取组合体相机外参 更多... | |
| RMStatus | getType () const |
| 获取组合体类型 更多... | |
| double | getTick () const |
| 获取捕获该组合体的时间点 更多... | |
| cv::Point2f | getRelativeAngle () const |
| 获取组合体的相对目标转角 更多... | |
| const GyroData & | getGyroData () const |
| 获取组合体当前的陀螺仪数据 更多... | |
| feature::ptr | at (size_t idx) const |
| 获取指定特征 更多... | |
| const auto & | data () const |
| 获取特征列表数据 更多... | |
| size_t | size () const |
| 获取特征列表大小 更多... | |
| bool | empty () const |
| 判断特征列表是否为空 更多... | |
静态 Public 成员函数 | |
| static std::shared_ptr< Rune > | make_combo (RuneTarget::ptr p_target, RuneCenter::ptr p_center, const GyroData &gyro_data, double tick, bool force=false) |
| Rune 构造接口 更多... | |
| static Rune::ptr | cast (combo::ptr p_combo) |
| 动态类型转换 更多... | |
| static Rune::const_ptr | cast (combo::const_ptr p_combo) |
| 动态类型转换 更多... | |
| static cv::Vec2f | cameraConvertToVertical (const cv::Vec2f &angle_vec, float diff_theta) |
| 相机平面中将角度值映射至垂直平面 更多... | |
| static cv::Vec2f | verticalConvertToCamera (const cv::Vec2f &angle_vec, float diff_theta) |
| 垂直平面中将角度值映射至相机平面 更多... | |
额外继承的成员函数 | |
Protected 属性 继承自 rm::combo | |
| std::vector< feature::ptr > | _features |
| 特征列表 更多... | |
| float | _height {} |
| 高度 更多... | |
| float | _width {} |
| 宽度 更多... | |
| float | _angle {} |
| 角度 更多... | |
| RMStatus | _type {} |
| 类型 更多... | |
| cv::Point2f | _center |
| 中心点 更多... | |
| cv::Point2f | _relative_angle |
| 相对目标转角 更多... | |
| GyroData | _gyro_data |
| 当前陀螺仪数据 更多... | |
| std::vector< cv::Point2f > | _corners |
| 角点 更多... | |
| CameraExtrinsics< float > | _extrinsic |
| 相机外参 更多... | |
| double | _tick {} |
| 捕获该组合体时的时间点 更多... | |
神符(能量机关)
at(0): 神符靶心,at(1): 神符旋转中心(R 标)getAngle() 获取的角度范围是 [-180,180)getCorners()[0]: 靶心环最靠近神符中心的点[1]: 靶心环与角点[0][2]的中垂线的交点(顺时针)[2]: 靶心环最远离神符中心的点[3]: 靶心环与角点[0][2]的中垂线的交点(顺时针)[4]: 神符中心点getExtrinsics 数据仅直线距离 distance 有效getCenter 为神符靶心的中心点,要获取神符旋转中心请访问对应特征 at(1) | using rm::Rune::const_ptr = std::shared_ptr<const Rune> |
| using rm::Rune::ptr = std::shared_ptr<Rune> |
| rm::Rune::Rune | ( | RuneTarget::ptr | p_target, |
| RuneCenter::ptr | p_center, | ||
| const GyroData & | gyro_data, | ||
| double | tick | ||
| ) |
|
delete |
|
delete |
|
inlinestatic |
相机平面中将角度值映射至垂直平面
| [in] | angle_vec | 相机平面中的角度值(起点指向终点的向量) |
| [in] | diff_theta | 两个平面之间的夹角(角度制) |
|
inlinestatic |
|
inlinestatic |
|
inline |
3D 空间下神符特征间距
|
inline |
是否激活
|
static |
Rune 构造接口
| [in] | p_target | 神符靶心 |
| [in] | p_center | 神符中心 |
| [in] | gyro_data | 陀螺仪数据 |
| [in] | tick | 捕获特征的时间点 |
| [in] | force | 是否为强制构造 |
|
inlinestatic |
垂直平面中将角度值映射至相机平面
| [in] | angle_vec | 垂直平面中的角度值(起点指向终点的向量) |
| [in] | diff_theta | 两个平面之间的夹角(角度制) |
1.9.1