【问题标题】:What does 0 0 1 mean in coordinate systems for 3d object?0 0 1 在 3d 对象的坐标系中是什么意思?
【发布时间】:2015-03-17 03:20:12
【问题描述】:

我正在阅读和学习 3d 中的坐标系,发现有些人对坐标系的旋转使用了不同的解释。 在坐标系中绘制3d物体是什么意思:

0 0 1
1 0 0
0 1 0

【问题讨论】:

    标签: math matrix 3d three.js


    【解决方案1】:

    这个问题太笼统了,我无法确定矩阵在每种情况下的含义。然而,在数学上,当您用矩阵表示 坐标系 时,矩阵就是您用来将向量从该坐标系更改为所谓的 canonical 系统的矩阵,其中一个向量 (x,y,z) 对应于基础 E = {(1,0,0), (0,1,0), (0,0,1)}。

    在您的情况下,如果您有一个向量v,其在另一个系统中的坐标为(a, b, c),您可以在规范基础中计算v 的坐标,将矩阵乘以列向量(a, b, c)

    | 0 0 1 | |a|   |c|
    | 1 0 0 | |b| = |a|
    | 0 1 0 | |c|   |b|
    

    例如,本系统中坐标为(1, 2, 3)的向量由通常的向量(3, 1, 2)组成。

    您可以使用子索引来注释您正在使用的坐标系。在您的示例中,如果我们设置 B = {(0,1,0), (0,0,1), (1,0,0)}(矩阵的列),我们有:

    (1, 2, 3)B = (3, 1, 2)E = (3, 1, 2) "没有E是为了简单”

    请注意,您可以在此基中对向量进行各种线性运算,然后将结果转换为规范基,或者先转换为规范基,然后再进行运算。在这两种情况下,您都会得到完全相同的结果。例如,

    1. (1, 2, 3)B + 4*(5, 6, 7)B = (21, 26, 31)B子> = (31, 21, 26)
    2. (3, 1, 2) + 4*(7, 5, 6) = (31, 21, 26)

    在 1 中,我们在 B 中操作,然后进行变换。在2中我们转换然后操作。两个结果是一样的。

    总之,

    1. 表示 R3 坐标系的矩阵 M 在其列中包含以(通常)规范基编写的此类系统的基 B 的向量.
    2. 要计算写在 B 中的向量 v 的规范坐标,请将矩阵 M 乘以由 v 在 B 中的坐标给出的列向量:M[v]B = [v]E.
    3. 由于上面的2,M可以看作是从B到E的矩阵。
    4. 从 E 变为(返回)B 的矩阵是逆 M-1

    【讨论】:

      猜你喜欢
      • 2018-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-20
      • 2015-05-27
      • 2018-09-10
      • 1970-01-01
      • 2023-02-02
      相关资源
      最近更新 更多