2017-08-31 81 views
0

我想通過它的dbIds中的每個對象來收集所有對象屬性。 但是對於數組中的第一個dbId,我得到的屬性和其他對象屬性我得到一個空數組。正如下面,enter image description here關於訪問foreach中所有對象屬性的問題

已經有人張貼了同樣的問題, Problems with getting the properties of an ID when looping over all Ids

這有可能讓所有對象在客戶端本身的屬性沒有擊中訪問其屬性的鍛造API?

+0

的REST調用 「GET:甕/元/:GUID /屬性」 將讓你的所有屬性和不花費任何雲學分,所以我不清楚你爲什麼想要一種不同的方法。另一種方式是像曉東提到的那樣使用getBulkProperties並提供模型中所有dbId的列表,您可以獲得以下信息:https://forge.autodesk.com/cloud_and_mobile/2016/10/get-all-database -ids-在最model.html。這要求您在查看器中加載模型。如果你想在沒有加載模型的情況下做到這一點,你可以提取可見的,但比這兩個建議難得多 –

+0

嗨,菲利普,使用派生API的問題是我無法獲得我的2D AutoCAD文件的屬性。檢查此鏈接https://stackoverflow.com/questions/45790913/how-to-extract-geometric-positions-from-2d-dwg-using-forge-autodesk-apis –

回答

0

獲取模型所有屬性的兩種方法:一種是在後端,如另一篇文章中提到的,即調用模型派生的端點。另一個是你正在嘗試的,通過getProperties轉儲屬性。

,如果你想獲得特定的屬性,getBulkProperties是選擇: https://forge.autodesk.com/blog/getbulkproperties-method

在其他職位的代碼看起來好像沒什麼問題,但我也不使它工作。我懷疑Forge Viewer的js代碼是否與這種方法的ES6兼容。我會深入挖掘。不過,它看起來ES6可以工作之前的JavaScript代碼。

`

for(var id in allDbIds) 
    { 
    console.log(id); 
    NOP_VIEWER.getProperties(id, 
     function(result) 
     { 
      console.log(result); 
     }, 
     function(err) 
     { 
      console.log(err); 
     }); 
    } 

`

enter image description here