快速业务通道

X3D实战基础讲座之八 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
否则落在图像外部。

TextureCoordinate节点的坐标点属性point通常用在IndexedFaceSet和ElevationGrid节点的texCoordindex属性中。例如下面的代码:

X3D实战基础讲座之八 - 编程入门网

说明:

(1) IndexedFceset节点用来将一组顶点来构造的一个3D平面形体。各形体表面是在coordIndex属性中通过来指定构造平面点(由Coordinate节点指定)的索引值来指定。当索引值为-1时,表明当前表面已经结束,下一个表面将要开始。

(2) 上述代码中,IndexedFceset节点仅构造了一个面,如下面的示意图所示,图中的粗体数字表示该点在Coordinate节点的point属性中的索引号。

X3D实战基础讲座之八 - 编程入门网

注意:在计算机图形学中,每一个面都有方向,并满足右手定则:右手四指的方向是指定的点的次序方向,大拇指方向为该平面的法向方向。若构成立体的各个表面的法向方向都是从由立体内部指向外部,则围成的是一个封闭的实体。

结果如下图所示:

X3D实战基础讲座之八 - 编程入门网

在上述代码中再添加代码,并修改IndexedFaceSet节点的texCoordindex属性,如下所示:

X3D实战基础讲座之八 - 编程入门网

结果如下:

X3D实战基础讲座之八 - 编程入门网

X3D实战基础讲座之八(4)

时间:2010-07-19

分析:

(1) TextureCoordinate节点指定的坐标点如下所示的示意图。由于在映射时,由IndexedFaceSet节点的texCoordindex属性指定的平面多边形图像应和coordIndex属性指定的平面多边形相映射。即图像0点和平面0点相对应,所以贴图看起来是上图的样子。

(2) 若指定ImageTexture的repeatS和repeatT的属性为True。则还会在面上沿水平方向和垂直方向重复贴图。

X3D实战基础讲座之八 - 编程入门网

上述代码仅仅是构造一个面,若构造一个体也可同样进行。如下面的代码:

X3D实战基础讲座之八 - 编程入门网

结果如下图所示:

X3D实战基础讲座之八 - 编程入门网

三、纹理的变换

X3D的节点TextureTransform 是用来改变帖图的二维纹理坐标的位置、方向和比例, 因为帖图先进行变换然后再贴到几何体上,所以视觉效果是相反的。如下面的代码:

X3D实战基础讲座之八 - 编程入门网

结果如下图所示:

X3D实战基础讲座之八 - 编程入门网

注意:

(1) TextureTransform的值和显示在形体上的结果刚好相反。

(2) 旋转只要指定相应的旋转角度(弧度值)即可。

(3) 坐标是图像的相对坐标。即取值在0到1之间,则这些坐标点落在图像内部,否则落在图像外部。

(4) 水平和垂直方向的比例值可以不同。

需要说明的是:对于X3D的多重纹理的使用,由于BS插件支持的不是很好,故这里暂不讨论。在下一讲中,我们将讨论X3D场景的多媒体效果。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号