VRML---第二章第三部分(纹理坐标及纹理坐标变换节点)

VRML提供了TextureCoordinate节点和TextureTransFrom节点来控制纹理坐标及纹理坐标变换。

纹理坐标节点

语法

TextureCoordinate{

#该域的域值设定纹理图像在纹理坐标系统中的位置。

  exposedField  MFVec2f  point[]

}

纹理坐标变换节点

TextureTransform通常作为Appearance造型节点中textureTransform的域值。
语法:

TextureTransform{

#Translation的域值用于设定变换后新的纹理坐标系的原点与原始坐标系中的原点在S、T方向上的距离。

exposedField  SFVec2f translation  0.0 0.0

#rotation的域值用于设定新的纹理坐标系相对于原始坐标系进行旋转(沿Z轴)的角度。

  exposedField  SFFloat  rotation     0.0

#scale的域值用于设定新的纹理坐标系在S、T方向上的缩放系数。

  exposedField  SFVec2f scale       1.0 1.0

#center的域值设定了一个二维坐标点,它位于新坐标系的原点上,纹理坐标系的旋转和缩放均围绕该中心点进行。

  exposedField  SFVec2f center      0.0 0.0

}

例子:

#VRML V2.0 utf8
Transform {
	translation  -2 0 0
	children [
		Shape{
			appearance  Appearance {
				texture  ImageTexture {
					url "Water lily1.jpg"
				}  #荷花图像纹理
			}
			geometry  DEF  a  Box {
				size 3 3 3
			}
		}
	]
}
Transform {
	translation  2 0 0
	children [
		Shape {
			appearance  Appearance {
				texture ImageTexture  {
					url "Water lily1.jpg"
				} 
				textureTransform  TextureTransform {
				translation  0.2 1     #在S方向位移0.5个单位
				rotation  1.571       #沿Z轴旋转90度
				scale  1.5 2          #在S、T方向进行压缩
			}
		}
		geometry  USE  a
	}
]
}






评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值