请问在 Forge Viewer 里要怎么改变一个构件的颜色?
可以的,你可以透过 viewer.setThemingColor() 这个函数来设置,它接受的参数是一个 THREE.Vector4。Forge Viewer 用 THREE.Vector4 的 (x, y, z) 来表示三原色 (r, g, b),w 代表不透明度 alpha,注意每个参数都是介于 0 到 1 之间,三原色的色码必需都除以 255。调用示例如下:
viewer.setThemingColor()
THREE.Vector4
(x, y, z)
(r, g, b)
w
alpha
// 变成红色 var color = new THREE.Vector4( 255/255, 0, 0, 1 ); viewer.setThemingColor( 2498, color);
结果截图,原本的绿地变成红色的了:
如果要还原构件的颜色的话,可以调用 viewer.clearThemingColors() 这个函数来清除颜色设置,结果如下:
viewer.clearThemingColors()
可以的,你可以透过
viewer.setThemingColor()
这个函数来设置,它接受的参数是一个THREE.Vector4
。Forge Viewer 用THREE.Vector4
的(x, y, z)
来表示三原色(r, g, b)
,w
代表不透明度alpha
,注意每个参数都是介于 0 到 1 之间,三原色的色码必需都除以 255。调用示例如下:结果截图,原本的绿地变成红色的了:
如果要还原构件的颜色的话,可以调用
viewer.clearThemingColors()
这个函数来清除颜色设置,结果如下: