threejs中随机生成颜色
这里封装了两个方法:getRandomColor,random, 直接调用getRandomColor方法即可;
getRandomColor() {let c1 = this.random(0, 255);let c2 = this.random(0, 255);let c3 = this.random(0, 255);return new this.$three.Color("rgb(" + c1 + ", " + c2 + ", " + c3 + ")");},/*** 产生随机整数,包含下限值,但不包括上限值* @param {Number} lower 下限* @param {Number} upper 上限* @return {Number} 返回在下限到上限之间的一个随机整数*/random(lower, upper) {return Math.floor(Math.random() * (upper - lower)) + lower;},
在页面中通过getObjectByName 获取Mesh后,通过一下方式可以设置材质的颜色:
let obj2 = obj.getObjectByName(this.radio1);
obj2.material.color = this.getRandomColor();
备注:this.$three 是将three.js直接挂载到了vue上,所以这里直接这样写了;
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
