为了账号安全,请及时绑定邮箱和手机立即绑定

autodesk forge如何获得模型浏览器功能的文件树?

autodesk forge如何获得模型浏览器功能的文件树?

繁星淼淼 2019-03-22 15:19:31
1.官方有查看文件树的功能,就是模型浏览器的文件树。想请问下获取这个文件树的api是什么?
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

可以通过下列方式拿到构件树:


var it = viewer.model.getData().instanceTree;


//或

viewer.getObjectTree(function( instanceTree ) {

   console.log( instanceTree );

});

因数据优化的缘故,所有数据都是平坦化过的,要重建数据结构可以通过:


function buildModelTree( model ) {


    //builds model tree recursively

   function _buildModelTreeRec( node ) {

         it.enumNodeChildren( node.dbId, function(childId) {

                 node.children = node.children || [];


                 var childNode = {

                   dbId: childId,

                   name: it.getNodeName( childId )

                 };


                 node.children.push( childNode );


                 _buildModelTreeRec( childNode );

           });


   }


   //get model instance tree and root component

   var it = model.getData().instanceTree;


   var rootId = it.getRootId();


   var rootNode = {

         dbId: rootId,

         name: it.getNodeName( rootId )

   };


   _buildModelTreeRec( rootNode );


   return rootNode;

 }


 var root = buildModelTree( viewer.model );


查看完整回答
反对 回复 2019-04-09
  • 1 回答
  • 0 关注
  • 338 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信