【问题标题】:What's the difference between a vector and a vertex?向量和顶点有什么区别?
【发布时间】:2012-05-17 16:40:26
【问题描述】:

我经常在 3D 编程环境中看到“向量”和“顶点”(复数“顶点”)这两个词。

据我所知,它们都描述了 n 维空间中的一个点。例如 XNA 框架有 Vector2、Vector3 和 Vector4 类,但似乎没有 Vertex 类。

向量和顶点之间的确切区别是什么?

【问题讨论】:

    标签: 3d xna vector-graphics vertex


    【解决方案1】:

    vector”是一个数学概念;粗略地说,它表示某个坐标空间中的位移。顶点是一些 3D(或实际上是 2D)几何的元素,通常具有位置和一些其他属性(颜色、纹理坐标等)。

    如果假设向量是从坐标系原点的位移,则顶点的位置(因此有时是顶点本身)可以用向量表示。有时人们将向量的这种表示称为“位置向量”。

    所以,粗略地说,不同之处在于向量可以用来描述(全部或部分)一个顶点。

    【讨论】:

    • 这里要注意的重要部分是向量仅包含位置数据,而顶点可以(通常确实)包含更多信息而不仅仅是其位置。
    • 在 XNA 和可能的其他 3D 图形框架中,存在 Vector4 类。既然人类仍然只能观察 3 个空间维度,那么 Vector4 类是否用于顶点?如果是,为什么叫 Vector?
    • @lesderid 更正式地说,向量是向量空间的一个元素,可以有 n 个坐标。虽然 1、2 和 3 维向量恰好与人类可以可视化的 3D 空间具有方便的几何关系,但这本身并不是向量的固有属性。也就是说,4 分量向量通常用作顶点属性(通常用于位置或颜色属性)。它们对位置很有用,因为它们允许 4x4 矩阵变换,它们对颜色很有用,因为它们恰好能够存储四个分量 (RGBA)。
    • 一个顶点也可能意味着更一般的东西,例如在图的顶点中。
    • @Josh 你也可以证明 Vector 用于存储颜色信息是合理的,因为它表示颜色空间中的位移。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    • 2022-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-20
    相关资源
    最近更新 更多