c++中关于M_PI,M_E的解释和使用,以及参考值

1.M_PI 是一个宏定义,圆周率的定义
   #define M_PI 3.14159265358979323846 (参考)
   此宏定义和编译器有关,TC中M_PI宏就定义在<math.h>里面。
   但vc的<math.h>中没有了M_PI的宏定义。

2.M_E 是自然对数的一个宏定义

  #define M_E  2.71828182845904523536 (参考)

3.常见宏定义:

#include<bits/stdc++.h>
#define _USE_MATH_DEFINES
using namespace std;
int main()
{
    cout<<M_PI<<endl;
    cout<<M_E<<endl;
    return 0;
}   
#if defined(_USE_MATH_DEFINES) && !defined(_MATH_DEFINES_DEFINED)
#define _MATH_DEFINES_DEFINED
 
#define M_E        2.71828182845904523536
#define M_LOG2E    1.44269504088896340736
#define M_LOG10E   0.434294481903251827651
#define M_LN2      0.693147180559945309417
#define M_LN10     2.30258509299404568402
#define M_PI       3.14159265358979323846
#define M_PI_2     1.57079632679489661923
#define M_PI_4     0.785398163397448309616
#define M_1_PI     0.318309886183790671538
#define M_2_PI     0.636619772367581343076
#define M_2_SQRTPI 1.12837916709551257390
#define M_SQRT2    1.41421356237309504880
#define M_SQRT1_2  0.707106781186547524401
 
#endif  /* _USE_MATH_DEFINES */

 

非常抱歉,我的回答有误。由于我之前没有完整的了解您的需求,导致我的回答存在问题。在此向您道歉。 如果您的 Mediapipe 计算得到的角度是肩部到肘部到手臂的角度,您需要确定需要旋转的骨骼节点,以及该骨骼节点的坐标系。如果您需要将该角度应用于 UE4 的骨骼节点,您需要将该角度转换为 UE4 骨骼节点的旋转角度。 在 UE4 ,骨骼节点的旋转角度使用四元数(FQuat)来表示,而不是欧拉角。因此,您需要将通过 Mediapipe 计算得到的角度值转换为四元数,然后将其赋值给 UE4 的骨骼节点的旋转属性。 以下是一个可能的 C++ 代码示例,用于将 Mediapipe 计算得到的角度转换为 UE4 的骨骼节点的旋转属性: ```c++ // 假设您已经获取了mediapipe计算得到的肩部到肘部到手臂的角度值,存储在shoulder_elbow_wrist_angle变量 // 假设您需要对名为"right_upper_arm"的骨骼节点进行旋转,节点指针存储在right_upper_arm_bone变量 // 将角度转换为弧度 float angle_in_radians = shoulder_elbow_wrist_angle * PI / 180.0f; // 根据需要旋转的骨骼节点的坐标系来确定每个分量的旋转角度 float pitch_angle = 0.0f; // 俯仰角 float yaw_angle = angle_in_radians; // 偏航角 float roll_angle = 0.0f; // 翻滚角 // 将欧拉角转换为四元数 FQuat rotation_quat = FQuat(FRotator(pitch_angle, yaw_angle, roll_angle)); // 将计算出的四元数赋值给骨骼节点的旋转属性 right_upper_arm_bone->SetRelativeRotation(rotation_quat); ``` 需要注意的是,以上代码示例仅供参考,具体的实现方式可能会因为您的具体场景和需求而有所不同。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值