patient_pxw 2016-04-21 09:59 采纳率: 33.3%
浏览 1470
已结题

3D数学基础:图形与游戏开发中四元数用以旋转时的疑问

书中在10.4.8节 四元数的乘法(叉乘)中定义四元数乘法时出了一个错误(最后四元数虚向量部分应该是W1*V1+W2*V2+V1×V2但是它却“强行”说标准乘法定义最后是V2×V1)

然后在书中提示“本书使用结尾为V1×V2的乘法定义”(非原文,简略表达)

接着在用四元数进行点旋转时说,定义一个四元数p=(0,(x,y,z))对应3D点p(x,y,z),然后通过旋转四元数q对其进行乘法:
p1= qpq^-1
即可得到p旋转后的点p1

接着!!
它又说这样左乘q,右乘q^-1的做法在连续旋转时不好用!!所以采用本书定义乘法(也就是之前说的结尾为V1×V2的乘法(可是这个本身就是标准乘法啊!?))
这样就可以做到:
p1=q^-1pq
来求得旋转后的点,方便连续旋转

这样弄得我有点糊涂啊,到底结尾V1×V2是不是真正的标准乘法?标准乘法定义下,左乘q再右乘q^-1和反过来乘有区别吗?

  • 写回答

1条回答

  • devmiao 2016-04-21 14:47
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题