如何获取2D绘图的模型对象树

时间:2017-01-09 23:04:37

标签: autodesk-forge autodesk-viewer

我使用viewer.getObjectTree = function(onSuccessCallback, onErrorCallback)获取模型对象树,然后从根节点遍历到所有叶节点。这是代码:

viewer.getObjectTree(function (objTree) {
    objTree.enumNodeChildren(
        objTree.getRootId(),
        function (dbId) {
            // Work with dbId
        },
        true
    );
};

但是,它仅适用于3D模型。 2D模型不会跳转到回调事件。如何获得2D布局/绘图的所有对象ID?

1 个答案:

答案 0 :(得分:0)

我找到了原因。 2D布局/绘图没有其模型对象树(只是图层)。它使用与3D模型不同的数据结构。 3D使用实例树来获取所有节点,但2D使用一串DbIds。

要在3D模型中导航对象,请使用viewer.getObjectTreeviewer.model.getData().instanceTree

要在2D布局中导航对象,请使用viewer.model.getData()。我可以从viewer.model.getData().stringDbIds

获取DbId列表