簡體   English   中英

如何讓 Autodesk Forge Viewer 支持.rcp 文件

[英]How to get Autodesk Forge Viewer to support .rcp files

我有一個 web 項目(React),它使用 Autodesk Forge 查看器顯示來自我們的 Enterprise BIM360 帳戶的 3D(和 2D)模型。 自去年以來,在 BIM360 中運行的同一個查看器現在支持.rcp文件,我們也希望允許它。 但是到目前為止我還不能讓它工作,而且我還沒有找到任何特定於.rcp支持的文檔。

我當前的查看器初始化如下。 它主要是文檔中的標准代碼,它適用於 3D 模型。

const options: Autodesk.Viewing.InitializerOptions = {
   getAccessToken: (callback) => callback(token.accessToken, token.expiresIn),
   loaderExtensions: { svf: "Autodesk.MemoryLimited" }
};
 
Autodesk.Viewing.Initializer(options, () => {
   const viewer = new Autodesk.Viewing.GuiViewer3D(ref.current);

   var startedCode = viewerObject.start();
   if (startedCode > 0) {
      onError('Error - Failed to create a Viewer: WebGL not supported.');
      return;
   }

   //urn is Base64
   Autodesk.Viewing.Document.load(urn, onDocumentLoadSuccess, onDocumentLoadError);
});

我天真地試圖給它一個.rcp文件的 Base34 骨灰盒,但沒有成功。 查看網絡,我可以在清單請求中看到400 Bad Request ( https://cdn.derivative.autodesk.com/derivativeservice/v2/manifest/{urn}?domain=http%3A%2F%2Flocalhost%3A6006 )。 感覺Document.load()代碼僅適用於具有清單但.rcp沒有的.svf格式?

通過https://lmv.ninja.autodesk.com示例,我意識到可以使用以下代碼加載.rcp文件:

viewer.loadModel(url, {}, onModalLoadSuccess,onModelLoadError);
viewer.loadExtension('Autodesk.ReCap')

我必須使用示例文件: https://s3.amazonaws.com/lmv.models/recap_models/AutodeskReCapSampleProject.rcp

但是,它不適用於我們 BIM360 帳戶中的私人鏈接。 查看網絡,我可以看到請求返回401 Unauthorized 遺憾的是,我的訪問令牌沒有添加到標題中。 一個錯誤? 還是我錯過了什么?

POST https://developer.api.autodesk.com/oss/v2/buckets/wip.dm.prod/objects/{guid}.rcp
401 Unauthorized
{ 
   "developerMessage":"Token is not provided in the request.", 
   "moreInfo": "https://forge.autodesk.com/en/docs/oauth/v2/developers_guide/error_handling/", 
   "errorCode": "AUTH-010"
}

我試圖通過登錄步驟查看 lmv.ninja 如何從 BIM360 model 執行此操作,但我無法通過 go 進行操作。 它不斷將我重定向到默認頁面而無需登錄。顯然對我來說似乎是另一個錯誤。

注意:我已將查看器庫更新為最新

https://autodeskviewer.com/viewers/latest/viewer3D.min.js
https://autodeskviewer.com/viewers/latest/extensions/ReCap/ReCap.min.js
https://autodeskviewer.com/viewers/latest/lmvworker.min.js

謝謝您的幫助

克萊門特

實際上,用於顯示點雲 3D-Tiles 的 Forge Viewer 是 Forge Viewer 的 fork 版本,目前無法同時顯示 CAD model 三角形和 3D-Tiles 點雲。 (我們稱之為“CAD 與掃描”)

您只是在尋找“掃描”(點),還是還需要查看結合三角形(SVF2)的點(3D-Tiles)?

這些 RCP 工作流程是“正在進行中的工作”,我希望在 Autodesk 大學期間的點雲演講中分享有關該主題的更新:BES500831 | 用點雲和 Forge 解鎖潛力 - BES500831 90 分鍾 技術指導 22 年 9 月 28 日(星期三)太平洋標准時間上午 11:00

請隨時直接與我聯系。

這是更新...嘗試使用 Forge Viewer 的 iframe 版本,像這樣...

腳步:

  1. 獲取原始 BIM 360 / ACC URL 地址,並提取項目、項目和文件夾變量(參見屏幕截圖中使用的顏色)
  2. 在每個變量中,將 ':' 字符替換為 '%3A'
  3. 刪除“b”。 從項目變量
  4. 從tileset.json文件中獲取ACCESSTOKEN Bearer Header(或使用您自己的三足系統)
  5. 將變量放入這個 URL 中:
https://cdn.recap.autodesk.com/viewer/latest/index.html?file={$ITEMS}&pid=${PROJECTS}&fid=${FOLDERS}&env=prd&src=bim360&accessToken=${ACCESSTOKEN}

這是一個示例,其中填充了變量:

BIM 360 URL:
https://docs.b360.autodesk.com/projects/37cf25af-1304-4c2b-b54f-0c98ed8a42e0/folders/urn:adsk.wipprod:fs.folder:co.AtLas5d8T_eWl2SzFB5pSg/detail/viewer/items/urn:adsk.wipprod:dm.lineage:tYiwN_yMTDmj5jroyTCwBQ

IFRAME URL:
https://cdn.recap.autodesk.com/viewer/latest/index.html?file=urn%3Aadsk.wipprod%3Adm.lineage%3AtYiwN_yMTDmj5jroyTCwBQ&pid=37cf25af-1304-4c2b-b54f-0c98ed8a42e0&fid=urn%3Aadsk.wipprod%3Afs.folder%3Aco.AtLas5d8T_eWl2SzFB5pSg&env=prd&src=bim360&accessToken=eyJhbGciO...etc 

然后將此 iFrame URL 放入瀏覽器,Recap 查看器將加載您的點雲,就像這個屏幕截圖...

在此處輸入圖像描述

這是一種解決方法,直到添加 URN 支持(氣泡解碼器即將推出)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM