5.2 修改属性
优质
小牛编辑
128浏览
2023-12-01
除了在构造函数中指定材质,在网格被创建后,也能对材质进行修改:
var material = new THREE.MeshLambertMaterial({
color: 0xffff00
});
var geometry = new THREE.CubeGeometry(1, 2, 3);
var mesh = new THREE.Mesh(geometry, material);
scene.add(mesh);
mesh.material = new THREE.MeshLambertMaterial({
color: 0xff0000
});
最终显示的颜色是红色:
位置、缩放、旋转
位置、缩放、旋转是物体三个常用属性。由于THREE.Mesh
基础自THREE.Object3D
,因此包含scale
、rotation
、position
三个属性。它们都是THREE.Vector3
实例,因此修改其值的方法是相同的,这里以位置为例。
THREE.Vector3
有x
、y
、z
三个属性,如果只设置其中一个属性,则可以用以下方法:
mesh.position.z = 1;
如果需要同时设置多个属性,可以使用以下两种方法:
mesh.position.set(1.5, -0.5, 0);
或
mesh.position = new THREE.Vector3(1.5, -0.5, 0);
缩放对应的属性是scale
,旋转对应的属性是rotation
,具体方法与上例相同,分别表示沿x、y、z三轴缩放或旋转。