基于Three.js的Forge Viewer中gizmo尺寸过小无法显示如何调整
Forge Viewer Transformation Extension Gizmo 尺寸异常解决方案
问题根因
gizmo默认采用自适应模型全局尺寸的计算逻辑,大尺寸场景下默认系数会导致gizmo渲染尺寸极小,仅能看到中心锚点。
修复方案
方案1:扩展初始化阶段指定尺寸
加载Transformation Extension时,直接在配置项传入自定义尺寸参数即可:
// 原生官方Transform扩展配置 viewer.loadExtension('Autodesk.Transform', { gizmoSize: 50, // 数值可根据模型尺寸在10~200区间调整,数值越大gizmo显示越大 // 保留你原有其他配置项 }) // 若使用forge-extensions仓库的第三方Transform扩展,参数名改为size即可 viewer.loadExtension('Transform', { size: 50 })
方案2:运行时动态调整尺寸
扩展加载完成后也可随时修改尺寸,无需重新加载:
const transformExt = viewer.getExtension('Autodesk.Transform') // 第三方扩展换对应的扩展ID if (transformExt) { // 官方扩展调用内置方法 transformExt.setGizmoSize(50) // 无内置方法的版本可直接修改属性生效 // transformExt.options.gizmoSize = 50 // transformExt.gizmo.setSize(50) }
修改后重新选中构件即可看到调整后的gizmo效果。
内容的提问来源于stack exchange,提问作者bim2016
相关产品推荐
相关产品推荐

