BIMHome v1.0.0
BIMHome接口文档说明
Public 成员函数 | 静态 Public 成员函数 | Public 属性 | 所有成员列表
DualQuat类 参考

DualQuat 类表示一个对偶四元数,即由对偶数分量组成的四元数。 更多...

#include <DualQuaternion.h>

Public 成员函数

DualQuat conj () const
 返回当前对偶四元数的共轭
 
DualQuat dual () const
 返回一个对偶四元数,只包含对偶部分
 
 DualQuat ()
 默认构造函数
 
 DualQuat (double x, double y, double z, double w)
 构造函数,初始化对偶四元数
 
 DualQuat (double x, double y, double z, double w, double dx, double dy, double dz, double dw)
 构造函数,初始化对偶四元数
 
 DualQuat (DualNumber x, DualNumber y, DualNumber z, DualNumber w)
 构造函数,初始化对偶四元数
 
 DualQuat (DualQuat re, DualQuat du)
 构造函数,从实部和对偶部分构建对偶四元数
 
DualNumber getW () const
 获取对偶四元数的 w 分量
 
DualNumber getX () const
 获取对偶四元数的 x 分量
 
DualNumber getY () const
 获取对偶四元数的 y 分量
 
DualNumber getZ () const
 获取对偶四元数的 z 分量
 
double length () const
 计算当前四元数的模
 
DualQuat operator- () const
 返回当前对偶四元数的相反数
 
DualQuat pow (double t, bool shorten=true) const
 计算对偶四元数的指数运算
 
DualQuat real () const
 返回一个新的对偶四元数,其对偶部分被置零
 
void setW (const DualNumber &number)
 设置对偶四元数的 w 分量
 
void setX (const DualNumber &number)
 设置对偶四元数的 x 分量
 
void setY (const DualNumber &number)
 设置对偶四元数的 y 分量
 
void setZ (const DualNumber &number)
 设置对偶四元数的 z 分量
 
double theta () const
 计算四元数表示的旋转角
 
DualQuat vec () const
 提取向量部分(x, y, z),并将标量部分(w)置为0.0
 

静态 Public 成员函数

static double dot (DualQuat a, DualQuat b)
 计算两个对偶四元数的点积
 
static DualQuat identity ()
 返回单位(或恒等)对偶四元数
 

Public 属性

DualNumber w
 w 分量
 
DualNumber x
 x 分量
 
DualNumber y
 y 分量
 
DualNumber z
 z 分量
 

详细描述

DualQuat 类表示一个对偶四元数,即由对偶数分量组成的四元数。

对偶四元数在位置插值中非常有用,具体可参见 pow 方法。 旋转存储在 DualQuat 的非对偶部分。平移编码到 DualQuat 的对偶部分: DualQuat.dual() = 0.5 * t * r, 其中 t 是平移的四元数,其 x、y、z 分量表示平移,w 分量为 0,r 是旋转四元数。


该类的文档由以下文件生成: