这个文件提供一些方便使用的数学函数。
更多...
#include <cmath>
#include <tuple>
#include <Eigen/Core>
浏览该文件的源代码.
|
template<typename T> |
T | pi () |
| 返回 float 或 double 类型的 \(\pi\) 值。
|
|
template<> |
constexpr double | pi< double > () |
|
template<> |
constexpr float | pi< float > () |
|
template<typename T> |
constexpr T | radians (T degrees) |
| 将角度转换为弧度。
|
|
template<typename T> |
constexpr T | degrees (T radians) |
| 将弧度转换为角度。
|
|
template<typename T> |
constexpr T | squ (T x) |
| 求一个数的平方。
|
|
template<typename T> |
constexpr T | clamp (T low, T high, T value) |
| 将一个数截断在给定的上下界之间
|
|
template<typename T> |
constexpr Eigen::Vector< T, 4 > | to_vec4 (Eigen::Vector< T, 3 > vec3) |
| 将代表方向的三维向量转换为它的齐次坐标形式。
|
|
Eigen::Vector3f | reflect (const Eigen::Vector3f &I, const Eigen::Vector3f &N) |
| 求向量 \(\mathbf{I}\) 关于向量 \(\mathbf{N}\) 的反射。
|
|
template<typename T> |
constexpr T | sign (T x) |
| 符号函数,正数的求值结果为 1,负数为 -1,零的求值结果是 0.
|
|
template<typename T> |
std::tuple< T, T, T > | quaternion_to_ZYX_euler (T w, T x, T y, T z) |
| 将旋转的四元数表示形式转换为 ZYX 欧拉角表示形式。
|
|
|
const Eigen::Matrix3f | I3f = Eigen::Matrix3f::Identity() |
|
const Eigen::Matrix4f | I4f = Eigen::Matrix4f::Identity() |
|
◆ pi< double >()
◆ pi< float >()
◆ I3f
const Eigen::Matrix3f I3f = Eigen::Matrix3f::Identity() |
由于 Eigen 的 Identity 方法返回的并非 Matrix 实例,在此创建一个含义相同的矩阵。
◆ I4f
const Eigen::Matrix4f I4f = Eigen::Matrix4f::Identity() |
由于 Eigen 的 Identity 方法返回的并非 Matrix 实例,在此创建一个含义相同的矩阵。