IFCjs Viewer:如何修改onHover鼠标悬停效果的颜色?
修改IFCjs Viewer鼠标悬停高亮颜色的方法
IFCjs Viewer的悬停高亮效果默认使用粉色,你可以通过以下两种方式将其改为浅灰色:
方法1:替换默认悬停材质
初始化Viewer后,直接创建自定义材质并替换内置的预选中(悬停)材质:
// 初始化Viewer实例 const viewer = new IFCViewer({ container: document.getElementById('viewer-container') }); // 创建浅灰色高亮材质 const customHoverMaterial = new THREE.MeshStandardMaterial({ color: 0xd3d3d3, // 浅灰色十六进制值,也可使用new THREE.Color('lightgray') transparent: true, opacity: 0.5, depthTest: false }); // 替换默认悬停材质 viewer.IFC.selector.preselectionMaterial = customHoverMaterial;
方法2:初始化时配置高亮参数(部分新版本支持)
如果使用的是较新版本的web-ifc-viewer,可以在初始化Viewer时直接配置悬停高亮的颜色:
const viewer = new IFCViewer({ container: document.getElementById('viewer-container'), highlightConfig: { preselection: { color: 0xd3d3d3, opacity: 0.5 } } });
注意
- 不同版本的
web-ifc-viewerAPI可能略有差异,建议对照对应版本的官方文档确认参数 - 可根据需求调整
opacity(透明度)参数,优化视觉效果
内容的提问来源于stack exchange,提问作者Oleg Moshkovich
相关产品推荐
相关产品推荐

