RMVL  1.2.0
Robotic Manipulation and Vision Library
命名空间 | 类型定义 | 枚举 | 函数 | 变量
uty_math.hpp 文件参考
#include <cmath>
#include <unordered_map>
#include <numbers>
#include <opencv2/core/matx.hpp>
#include "rmvl/core/util.hpp"
uty_math.hpp 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

命名空间

 rm
 
 cv
 

类型定义

using cv::Matx11f = Matx< float, 1, 1 >
 
using cv::Matx11d = Matx< double, 1, 1 >
 
using cv::Matx51f = Matx< float, 5, 1 >
 
using cv::Matx15f = Matx< float, 1, 5 >
 

枚举

enum  rm::AngleMode : bool { rm::RAD = true , rm::DEG = false }
 角度制式 更多...
 
enum class  rm::CalPlane : uint8_t { rm::xyz = 0 , rm::xOy = 1 , rm::xOz = 2 , rm::yOz = 3 }
 计算所在平面 更多...
 

函数

constexpr double rm::operator""_PI (long double num)
 
constexpr double rm::operator""_PI (long long unsigned num)
 
constexpr double rm::operator""_to_rad (long double num)
 
constexpr double rm::operator""_to_rad (long long unsigned num)
 
constexpr double rm::operator""_to_deg (long double num)
 
constexpr double rm::operator""_to_deg (long long unsigned num)
 
template<typename Tp >
constexpr Tp rm::operator+ (Tp val, const cv::Matx< Tp, 1, 1 > &mat)
 
template<typename Tp >
constexpr cv::Matx< Tp, 1, 1 > rm::operator+ (const cv::Matx< Tp, 1, 1 > &mat, Tp val)
 
template<typename Tp >
constexpr Tp rm::operator- (Tp val, const cv::Matx< Tp, 1, 1 > &mat)
 
template<typename Tp >
constexpr cv::Matx< Tp, 1, 1 > rm::operator- (const cv::Matx< Tp, 1, 1 > &mat, Tp val)
 
template<typename Tp >
constexpr Tp rm::deg2rad (Tp deg)
 角度转换为弧度 更多...
 
template<typename Tp >
constexpr Tp rm::rad2deg (Tp rad)
 弧度转换为角度 更多...
 
template<typename Tp >
constexpr cv::Matx< Tp, 3, 1 > rm::point2matx (cv::Point3_< Tp > point)
 Point类型转换为Matx类型 更多...
 
template<typename Tp >
constexpr cv::Point3_< Tp > rm::matx2point (cv::Matx< Tp, 3, 1 > matx)
 Matx类型转换为Point类型 更多...
 
template<typename Tp >
constexpr cv::Vec< Tp, 3 > rm::matx2vec (cv::Matx< Tp, 3, 1 > matx)
 Matx类型转换为Vec类型 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getDistance (const cv::Point_< Tp1 > &pt_1, const cv::Point_< Tp2 > &pt_2)
 获取距离 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getDistance (const cv::Vec< Tp1, 2 > &vec_1, const cv::Vec< Tp2, 2 > &vec_2)
 获取距离 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getDistance (const cv::Point3_< Tp1 > &pt_1, const cv::Point3_< Tp2 > &pt_2, CalPlane calplane=CalPlane::xyz)
 获取距离 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getDistance (const cv::Vec< Tp1, 3 > &vec_1, const cv::Vec< Tp2, 3 > &vec_2, CalPlane calplane=CalPlane::xyz)
 获取距离 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getDistance (const cv::Vec< Tp1, 4 > &line, const cv::Point_< Tp2 > &pt, bool direc=true)
 点到直线距离 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getHAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD)
 获取与水平方向的夹角,以平面直角坐标系 x 轴为分界线, 逆时针为正方向,范围: (-180°, 180°],默认返回弧度制 更多...
 
template<typename Tp1 , typename Tp2 >
constexpr auto rm::getVAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD)
 获取与垂直方向的夹角,以平面直角坐标系 y 轴为分界线, 顺时针为正方向,范围: (-180°, 180°],默认返回弧度制 更多...
 
template<typename Tp >
constexpr Tp rm::getDeltaAngle (Tp angle_1, Tp angle_2)
 求两个角之间的夹角 更多...
 
template<typename Tp >
constexpr Tp rm::sec (Tp x)
 正割 \(\sec(x)\) 更多...
 
template<typename Tp >
constexpr Tp rm::csc (Tp x)
 余割 \(\csc(x)\) 更多...
 
template<typename Tp >
constexpr Tp rm::cot (Tp x)
 余切 \(\cot(x)\) 更多...
 
template<typename Tp >
constexpr Tp rm::sgn (Tp x)
 符号函数 更多...
 
template<typename Tp >
constexpr Tp rm::sigmoid (Tp x, Tp k=1, Tp Kp=1, Tp mu=0)
 计算 sigmoid(x) 在某一点的函数值 更多...
 
template<typename Tp >
constexpr Tp rm::cross2D (const cv::Vec< Tp, 2 > &a, const cv::Vec< Tp, 2 > &b)
 平面向量外积 更多...
 
template<typename Tp >
constexpr Tp rm::cross2D (const cv::Point_< Tp > &a, const cv::Point_< Tp > &b)
 平面向量外积 更多...
 
template<typename ForwardIterator >
ForwardIterator::value_type rm::calculateModeNum (ForwardIterator first, ForwardIterator last)
 在指定范围内寻找众数,时间复杂度 O(N) 更多...
 

变量

constexpr double rm::PI = std::numbers::pi
 圆周率: \(\pi\) 更多...
 
constexpr double rm::e = std::numbers::e
 自然对数底数: \(e\) 更多...
 
constexpr double rm::SQRT_2 = std::numbers::sqrt2
 根号 2: \(\sqrt2\) 更多...
 
constexpr double rm::PI_2 = PI / 2.
 PI / 2: \(\frac\pi2\) 更多...
 
constexpr double rm::PI_4 = PI / 4.
 PI / 4: \(\frac\pi4\) 更多...
 
constexpr double rm::g = 9.788
 重力加速度: \(g\) 更多...
 

详细描述

作者
RoboMaster Vision Community
版本
1.0
日期
2023-01-12