天行健 君子当自强而不息

     摘要: 处理变换是一件非常令人头疼的事,矩阵更是棘手。如果你曾经编写过关于矩阵的代码并且没有用设计良好的类,你会发现经常要处理负号、转置矩阵或翻转连接顺序以使其能正常工作。

下面这几个类正是为了消除在编程中经常遇到的这类问题而设计的。例如,很少需要直接访问矩阵或四元数中的元素,因此特意限制了可用操作的数目以避免产生迷惑,再如,对cRotationMatrix类,没有求逆和连接操作,因为如果按其本身的目的使用cRotationMatrix,这些操作是不应该出现或没有意义的。   阅读全文
posted @ 2008-02-19 19:46 lovedday 阅读(1500) | 评论 (1)编辑 收藏
     摘要: cRotationMatrix就其特殊目的来说是称职的,但也正因为如此,它的广泛应用受到了限制。cMatrix4x3类是一个更加一般化的矩阵,它被用来处理更加复杂的变换。这个矩阵类保存了一个一般仿射变换矩阵。旋转、缩放、镜像、投影和平移变换它都支持,该矩阵还能求逆和组合。

因此,cMatrix4x3类的语义和cRotationMatrix类完全不同。cRotationMatrix仅应用于特殊的物体空间和惯性空间,而cMatrix4x3有更一般的应用,所以我们使用更一般化的术语"源"和"目标"坐标空间。和cRotationMatrix不一样,它的变换方向是在矩阵创建时指定的,之后点只能向那个方向(源到目标)变换。如果要向相反的方向变换,须先计算逆矩阵。  阅读全文
posted @ 2008-02-19 19:40 lovedday 阅读(900) | 评论 (0)编辑 收藏
     摘要: cRotationMatrix类的目的就是处理非常特殊的(也是极其常用的)物体和惯性坐标空间之间的旋转。这个矩阵类不是一般的变换类,我们假定这个类只包含旋转,因此,它是正交的。换句话说,该矩阵表达的是方位,而不是角位移。当你创建这样的矩阵时,不必指定变换的方向(物体坐标空间到惯性坐标空间或是惯性坐标空间到物体坐标空间)。变换的方向在实际执行变换时指定,每个方向对应一个函数。  阅读全文
posted @ 2008-02-19 09:49 lovedday 阅读(495) | 评论 (0)编辑 收藏
     摘要: cQuaternion类用来以四元数形式保存方位或角位移,在能应用到四元数上的完整数学运算集合中,只有那些对单位四元数有意义的运算才对保存角位移有用,这里没有提供四元数的求负、加减、标量乘、对数操作。  阅读全文
posted @ 2008-02-18 19:31 lovedday 阅读(735) | 评论 (0)编辑 收藏
留下一个人和一盏灯
让黑夜躲在窗外
寒冷的尽头是一壶酒
温暖我唯一的梦
许多生命里走过的风雨
并非每个人都懂
就当我和你从不曾有过
如此短暂的相遇
化身没有爱也没有恨的海
洗净忧伤的尘埃
眼中的遗憾和心底的伤感
总有停泊的港湾
不是我能够负担



posted @ 2008-02-18 11:47 lovedday 阅读(187) | 评论 (0)编辑 收藏
     摘要: 处理变换是一件非常令人头疼的事,矩阵更是棘手。如果你曾经编写过关于矩阵的代码并且没有用设计良好的类,你会发现经常要处理负号、转置矩阵或翻转连接顺序以使其能正常工作。

下面这几个类正是为了消除在编程中经常遇到的这类问题而设计的。例如,很少需要直接访问矩阵或四元数中的元素,因此特意限制了可用操作的数目以避免产生迷惑,再如,对cRotationMatrix类,没有求逆和连接操作,因为如果按其本身的目的使用cRotationMatrix,这些操作是不应该出现或没有意义的。  阅读全文
posted @ 2008-02-18 10:49 lovedday 阅读(1111) | 评论 (0)编辑 收藏
唉,游戏这东西。



posted @ 2008-02-16 21:07 lovedday 阅读(499) | 评论 (0)编辑 收藏
     摘要: 直观地说,我们知道物体的“方位”主要描述的是物体的朝向。然而“方向”和“方位”并不完全一样。向量有“方向”但没有“方位”,区别在于,当一个向量指向特定方向时,可以让向量自转(如图10.1所示),但向量(或者说它的方向)却不会有任何变化,因为向量的属性只有“大小”,而没有“厚度”和“宽度”。   阅读全文
posted @ 2008-02-16 12:52 lovedday 阅读(2212) | 评论 (0)编辑 收藏
     摘要: 为了将角位移从欧拉角转换到四元数,可以使用从欧拉角构造矩阵类似的方法。先将这三个旋转分别转换为四元数,这是一个简单的运算。再将这三个四元数连接成一个四元数。和矩阵一样,有两种情况需要考虑,第一种是惯性 -- 物体四元数,第二种是物体-- 惯性四元数。因为它们互为共轭关系,所以我们只推导惯性--物体四元数。  阅读全文
posted @ 2008-02-16 12:50 lovedday 阅读(1169) | 评论 (3)编辑 收藏
     摘要: 为了将角位移从四元数转换到矩阵形式,可以利用旋转矩阵,它能计算绕任意轴的旋转:

这个矩阵是用n和θ表示的,但四元数的分量是:

w = cos(θ/2)

x = nx sin(θ/2)

y = ny sin(θ/2)

z = nz sin(θ/2)  阅读全文
posted @ 2008-02-16 11:23 lovedday 阅读(728) | 评论 (0)编辑 收藏
仅列出标题
共136页: First 29 30 31 32 33 34 35 36 37 Last 

公告

导航

统计

常用链接

随笔分类(178)

3D游戏编程相关链接

搜索

最新评论