autodesk-forge - 需要 Autodesk Viewer UI 代码位置和编辑建议
问题描述
我需要一些帮助来调整 Autodesk Viewer UI。我正在处理http://extract.autodesk.io/的本地化版本输出提供的文件。我没有进行任何自定义编辑。我需要帮助找到以下领域更改的相关代码和建议:
- 模型浏览器停靠面板。默认情况下,这将打开树中的第一组展开(见图)。我希望这个第一个元素和所有其他元素默认打开为折叠,所以只显示父名称。
- 留在模型浏览器中。滚动条(当模型元素名称列在模型浏览器窗口大小之外时看到)在 Opera 和 Chrome 浏览器中正确显示,但是,它们在 Firefox 浏览器中显示为宽窗口样式滚动条,没有样式。Firefox 需要什么才能按预期显示滚动条?
- 正确加载默认缩放值后,哪些代码可能会覆盖相机缩放属性?来自http://extract.autodesk.io/的查看器版本可以导入启动视图的场景相机属性,但在初始页面加载后不久用另一个值覆盖 Zoom 属性。
解决方案
1.I want this first element and all other elements to open by default as Collapsed, so just the parent names are shown.
不幸的是,据我所知,Viewer 中没有直接的本地配置选项来实现这一点。但是,您可以:
将一次性点击监听器挂到
Model Browser
按钮上,以编程方式触发您想要折叠的相应笔记的点击,或直接向它们添加“.collapsed”类。您可以通过它们lmv-nodeid
或它们来获取节点label text
:<div lmv-nodeid="9" class="collapsed group visible"> <lmvheader style="padding-left: 13px;"> <div class="visibility"></div> <label>Switch:1</label> </lmvheader> </div>
- 使用 and扩展和构建您自己的浏览器
instanceTree
,请参见此处Autodesk.Viewing.UI.DockingPanel
的示例
2.What is needed for Firefox to display scrollbars as intended?
这是您问题的一个很好的答案。但看起来现状仍然远非完美,到目前为止还没有发现明确的黑客攻击。因此,对于一个彻底的解决方案,您需要创建自己的样式(可以在类似的帮助下这样做)并将它们应用到.docking-panel
并附加.model-structure-panel
或您希望缩小范围的任何其他面板。
3.What code might override camera zoom property AFTER correctly loading default zoom value ?
这应该是您所追求的代码。
您可以使用 来操作相机viewer.autocam.goToView( newView )
,并查看下面的示例视图配置:
const newView = {
position: newPosition,
up: currentView.up,
center: newCenter,
pivot: newPivotPoint,
fov: currentView.fov,
worldUp: currentView.worldUp,
isOrtho: (currentView.isOrtho === false)
}
推荐阅读
- android - 使用视图模型在一个简单的片段中监听偏好的变化
- r - 如何在ggplot中更改aes()中的颜色
- awk - 节点:评论 gawk:cmd。line:70: (FILENAME=../doc/m4.texinfo FNR=919) 致命:\{\} 的内容无效:/@tabchar{}/
- swift - 在迁移期间移除属性
- r - 无法让 write.csv 或 write.table 在 BlueSky Statistics 的 r 编辑器中工作
- azure - VSFM 2019 - 无法读取或写入 NuGet.config
- eslint - Nuxt 应用程序中的 eslint 突然无法正常工作 - 出现错误:未找到 ESLint 配置
- google-cloud-dataproc - 从作曲家在数据处理集群上执行 bash 脚本
- pandas - 当我尝试在 python 中导入时,.csv 文件返回“unicode 错误”
- ruby-on-rails-5 - 动作电缆无法解决生产握手问题