请问要如何获取当前加载模型的所有 dbId?

我需要获取当前加载模型所有构件的性质,当前的想法是如果我所有dbId 的清单,我就可以通过 Autodesk.Viewing.Viewer3D.getProperties(dbid,onSuccessCallback,onErrorCallback) 来达成这个目的。

是不是有办法可以达成这件事呢?

来源:https://stackoverflow.com/que...

阅读 2.8k
1 个回答

可以的,您可以通过下面的代码来获取所有构件的dbId:

// Used in blog post http://adndevblog.typepad.com/cloud_and_mobile/2016/10/get-all-database-ids-in-the-model.html
function getAllDbIds(viewer) {
    var instanceTree = viewer.model.getData().instanceTree;

    var allDbIds = Object.keys(instanceTree.nodeAccess.dbIdToIndex);

    return allDbIds;
}
//view rawGetAllDbIds.js hosted with ❤ by GitHub

另外,这里有一个函数可以用来获取多个构件的性质:getBulkProperties

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题