作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Autodesk Viewer LayerManager 扩展中遇到了一个错误,该错误会破坏 restoreState 功能。我正在使用 getState 保存多层 DWG 文件的状态,并使用 restoreState 重新应用该状态。当我恢复状态时,大部分或所有层都被隐藏,即使它们在我保存状态时并未隐藏。
看起来这是关于如何保存和解释状态的问题。我深入研究了状态 JSON 并找到了这种形式的可见层列表 (state.objectSet[0].isolated
):
["0","1","2","3","4","5"]
经过一些试验,我发现 LayerManager 需要层的整数索引或层的字符串名称。像这样的东西:
[0,1,2,3,4,5]
或
["layer0","layer1","layer2","layer3","layer4","layer5"]
(假设这些是每一层的名称)
因此当前的实现会中断,因为它会查找名称为“0”、“1”、“2”等的层,而不管实际的层名称是什么。
我想知道是否有办法解决或解决这个问题。一个临时解决方案是解析状态 JSON 并将层数转换为整数,但这有点麻烦。
最佳答案
这是一个已知问题,我们的工程部门目前正在调查该问题。可以关注我们的Forge Blog并查看发行说明以密切关注修复。
与此同时,作为快速解决方法,您可以在加载所有图形后以编程方式显示所有图层:
viewer.addEventListener(Autodesk.Viewing.GEOMETRY_LOADED_EVENT, ()=>viewer.showAll())
关于autodesk-forge - 如何将 Autodesk Viewer LayerManager 正确设置为 RestoreState,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54913404/
我是一名优秀的程序员,十分优秀!