What & How & Why

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
vfx:houdini:concepts:geo:points_vertex [2020/02/28 13:30] – [How to form a primitive] codingharevfx:houdini:concepts:geo:points_vertex [2022/12/17 15:05] (当前版本) – [Point] codinghare
行 1: 行 1:
 ======Points and Vertices====== ======Points and Vertices======
 Points 与 Vertices 的概念和区别。 Points 与 Vertices 的概念和区别。
-===== =====+----
  
 ====Point==== ====Point====
  
-//Point// 在 //Houdini// 中是由空间中的 ''4'' 个数字定义的,分别是 ''(X,Y,Z,W)''。''X,Y,Z'' 代表了 //Point// 在空间中的坐标,而 ''W'' 则是一个标量,用于坐标的这里应该是四元数,但也用一个标量也可用矩阵实现变换)。因此,//Point// 在该空间中是**不重复**的。+//Point// 在 //Houdini// 中是由空间中的 ''4'' 个数字定义的,分别是 ''(X,Y,Z,W)''。''X,Y,Z'' 代表了 //Point// 在空间中的坐标,而 ''W'' 则是一个标量(应该是 //Homogeneous//)。因此,//Point// 在该空间中是**不重复**的。
 \\ \\
 \\ \\
行 30: 行 30:
 因为Vertex 是构成 Primitive 的单位,其自身并没有在**世界坐标系**中的信息 。因此,我们需要引进一个概念,针对世界世界坐标系的绝对坐标值来描述 Primitive 的顶点位置。因此,如果我们打开 Houdini 的 spreed sheet,我们会发现,points 中存储的是 ''[x,y,z]'',而 vertex 中存储的是 ''@ptnum''。那么实际上,Houdini 中的点的信息就是这么存储的: 因为Vertex 是构成 Primitive 的单位,其自身并没有在**世界坐标系**中的信息 。因此,我们需要引进一个概念,针对世界世界坐标系的绝对坐标值来描述 Primitive 的顶点位置。因此,如果我们打开 Houdini 的 spreed sheet,我们会发现,points 中存储的是 ''[x,y,z]'',而 vertex 中存储的是 ''@ptnum''。那么实际上,Houdini 中的点的信息就是这么存储的:
 <code> <code>
-point[x,y,z];+Point[x,y,z];
 //reference position from point //reference position from point
-Vertex[@ptnum, ref(point)]+Vertex[@ptnum, ref(Point)]
 </code> </code>
 我们可以将 vertex 想象为 point 的 **容器**;换句话说,也就是 vertex 是类, point 是实例。因此,理论上的单个 primitive 是由其对应的 vertex 与 遍历 vertex 的顺序建立的;而 point 提供的额外的坐标数据,确定了该 primitive 在整个世界坐标系中的唯一性。 我们可以将 vertex 想象为 point 的 **容器**;换句话说,也就是 vertex 是类, point 是实例。因此,理论上的单个 primitive 是由其对应的 vertex 与 遍历 vertex 的顺序建立的;而 point 提供的额外的坐标数据,确定了该 primitive 在整个世界坐标系中的唯一性。