升级到Viewer v7.51后使用Autodesk.NPR石墨模式选中对象不可见
问题根因
- Autodesk Viewer v7.x版本重构了NPR扩展的渲染逻辑,石墨模式下会优先使用扩展内置的选择高亮色参数,默认值为纯白色,和你设置的白色背景重叠后导致选中对象不可见
- 原有
myViewer.setSelectionColor()方法仅作用于默认渲染管线的高亮逻辑,不会同步到NPR扩展的内部配置,所以修改后不生效
修复方案
直接修改NPR扩展的内部selectionColor参数,替换原有直接调用setSelectionColor的逻辑即可,修改后的代码如下:
myViewer.setBackgroundColor(255, 255, 255, 255, 255, 255); var ext=myViewer.getExtension('Autodesk.NPR'); ext.setParameter("style", "graphite"); ext.setParameter("brightness", 1.0); // 新增配置:指定NPR模式下的选中高亮色,参数为THREE.Vector4类型,对应RGBA取值0~1 ext.setParameter("selectionColor", new THREE.Vector4(0.4, 0.6, 1, 1));
可选补充配置
如果需要调整选中对象的高亮透明度,可以额外添加以下配置:
// 取值范围0~1,数值越高高亮覆盖层越不透明 ext.setParameter("selectionOpacity", 0.8);
内容的提问来源于stack exchange,提问作者Neil_M
相关产品推荐
相关产品推荐

