首页 > 解决方案 > 需要 Autodesk Viewer UI 代码位置和编辑建议

问题描述

我需要一些帮助来调整 Autodesk Viewer UI。我正在处理http://extract.autodesk.io/的本地化版本输出提供的文件。我没有进行任何自定义编辑。我需要帮助找到以下领域更改的相关代码和建议:

  1. 模型浏览器停靠面板。默认情况下,这将打开树中的第一组展开(见图)。我希望这个第一个元素和所有其他元素默认打开为折叠,所以只显示父名称。
  2. 留在模型浏览器中。滚动条(当模型元素名称列在模型浏览器窗口大小之外时看到)在 Opera 和 Chrome 浏览器中正确显示,但是,它们在 Firefox 浏览器中显示为宽窗口样式滚动条,没有样式。Firefox 需要什么才能按预期显示滚动条?
  3. 正确加载默认缩放值后,哪些代码可能会覆盖相机缩放属性?来自http://extract.autodesk.io/的查看器版本可以导入启动视图的场景相机属性,但在初始页面加载后不久用另一个值覆盖 Zoom 属性。

模型浏览器

铬滚动条

Firefox 滚动条

标签: autodesk-forgeautodesk-viewerautodesk-model-derivative

解决方案


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)
}

推荐阅读