我用viewer.getObjectTree = function(onSuccessCallback, onErrorCallback)
得到模型對象樹,然後遍歷從根節點到所有葉節點。這裏是代碼:如何獲得2D的模型對象繪製樹
viewer.getObjectTree(function (objTree) {
objTree.enumNodeChildren(
objTree.getRootId(),
function (dbId) {
// Work with dbId
},
true
);
};
但是,它只適用於3D模型。 2D模型不會跳入回調事件。我如何獲得2D佈局/繪圖的所有對象ID?
我只是在我們的樣本的Revit文件驗證獲得的dbid的列表,並在瀏覽器2.11使用二維模型,它工作正常。 對於你的問題,通常,原因是當你試圖獲取它時,實例樹沒有被初始化。所以你需要確保實例樹已經建立。你檢查這個帖子http://stackoverflow.com/questions/38904993/how-to-retrieve-forge-viewer-objecttree/38909765#38909765萬一它是相同的問題? –
我在'Autodesk.Viewing.OBJECT_TREE_CREATED_EVENT'中放置'viewer.getObjectTree',但它不適用於2D繪圖,只適用於3D模型。你可以分享你的完整代碼嗎? –
您是否嘗試在Autodesk.Viewing.GEOMETRY_LOADED_EVENT中執行此操作?我實際上是在這個事件裏面做的。 –