IndexedFaceSet节点

IndexedFaceSet节点

IndexedFaceSet {

  
coordNULL # exposed field SFNode
coordIndex[ ]# MFInt32
texCoord NULL# exposed field SFNode
texCoordIndex[ ]# MFInt32
colorNULL# exposed field SFNode
colorIndex[ ]# MFInt32
colorPerVertexTRUE# SFBool
normalNULL# exposed field SFNode
normalIndex[ ]# MFInt32
normalPerVertexTRUE# SFBool
ccwTRUE# SFBool
solidTRUE# SFBool
convexTURE# SFBool
creaseAngle0# SFFloat

}

 
 
coord含一个Coordinate节点,这个节点列出了标号平面集之中所有的顶点。 
coordIndex一个多边形列表,每个多边形通过一组指向Coordinate节点中的顶点索引来指明。 
texCoord 含一个TextureCoordinate节点,指明将一幅纹理映射到标号平面集之上。 
texCoordIndex指向TextureCoordinate节点的索引列表。 
color一个Color节点,它列出了用于为每个顶点或每个面着色的颜色列表。 
colorIndex指向Color节点的索引列表。 
colorPerVertex如果在color域有一个节点,则该域指明是把一种颜色赋给每个顶点(TRUE)还是赋给每个表面(FALSE)。 
normal如果要指定一个法向量,让此域包含一个Normal节点。 
normalIndex指向Normal节点的索引列表。 
normalPerVertex指明是否已为每个节点(TRUE)还是给每个表面(FALSE)确定了法向量。如果normal域为空,该域被忽略。 
ccw指明每个表面上的顶点。当从前面看时,是以逆时针方向排列(TRUE)还是以顺时针方向排列(FALSE)。当为TRUE时,所画平面正面面向屏幕;当为FALSE时,所画平面背面面向屏幕。 
solid指明用户是否能看见任何表面的背面。
convex指明是否所有表面是凸的。如果是,一些浏览器可以优化运算过程。 
creaseAngle转折角,可以使相邻两表面间的边界看上去有平滑过渡。
 
事件 
set_colorIndexeventIn  MFInt32
设置 colorIndex 的域值 
set_coordIndexeventIn  MFInt32
设置 coordIndex 的域值 
set_normalIndex eventIn  MFInt32
设置 normalIndex 的域值 
set_texCoordIndexeventin  MFInt32
设置 texCoordindex 的域值
 
说明
      一个IndexedFceset节点代表一个由一组顶点构建的一系列平面多边形形成的3D形体。一个索引的表面集合通过coordIndex域内的一个索引值列表说明它的多边形表面。索引值为-1时,表明当前表面已经结束,下一个表面将要开始。索引的表面集合只能在Shape节点的geometry域中出现。
     如果texCoord域不是NULL,这时它引用的TextureCoordinate节点中坐标出现的倾序决定各坐标的编号,编号的起点为0。如果texCoordIndex域不空,其值的个数不应少于coordIndex域,并在与coordInd ex域相同的位置包含相同的分隔标志-1,其地位置的质材坐标编号顺序对应着coordIndex中顶点编号,将质材坐标与顶点联系起来。如果texCoordIndex域为空,那么直接把coordIndex域的编号当成质材坐标编号,从TextureCoor dinate节点中选择质材坐标,这时如果coordIndex域中最大的编号是N,TextureCoordinate节点中应该包含 N+1个坐标值。
      通过使用texuXirdlndex域中的索引值,可以将纹理坐标(由Texturecoordinate节点定义)与形体的顶点捆绑在一起。对于所有基于顶点的形体,如当前有一纹理但没指定纹理坐标,缺省的纹理坐标映射可以用形体的包围盒计算。包围盒的最大长度定义了S(水平)向的纹理坐标,次长度定义t(垂直)方向的纹理坐标。S坐标的值由0到1,从包围盒的一端到另一端。t坐标在0和包围盒的次长与最大长度的比率之间变化。 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值