是否可以通過從外部網頁接收特定 ID 來實現 Forge Viewer 中的突出顯示功能? (Is it possible to implement the highlight function in Forge Viewer by receiving a specific ID from an external web page?)


問題描述

是否可以通過從外部網頁接收特定 ID 來實現 Forge Viewer 中的突出顯示功能? (Is it possible to implement the highlight function in Forge Viewer by receiving a specific ID from an external web page?)

正在使用 Forge Viewer 查看 IFC 格式項目。IFC 項目元素(頂板、樓板、右牆等)列在外部網頁上,我想實現一個功能,在選擇其中一個時在 Forge Viewer 中突出顯示。

應該我使用'GLOBALID'來實現這個功能?我一直在尋找 Forge Viewer 的 API(v7),但我很好奇它是否提供與上述相同的功能。


參考解法

方法 1:

Yeah, it's possible. Here is a sample demonstrating this idea:

https://github.com/yiskang/forge‑viewer‑iframe‑interoperability

This sample supports two ways to locate objects:

  1. By passing querying strings to viewer page's URL (See public/extlink.html):

    • urn: It stands for which model to load by the Forge Viewer.
    • idType: It stands for the IFC guid type. If the IFC model is translated by the legacy IFC pipeline, then the idType is GLOBALID. On the contrary, if you're using modern pipeline, the idType is IfcGuid.
    • guid: It stands for the IFC guid of the object you want to locate.

    • </ul>

      With those parameters, you can locate objects after model is loading completely immediately by passing them to the URL like the below:


      </li>
      </ol>

      http://localhost:3000/viewer/?urn=dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6ZXh0cmFjdC1hdXRvZGVzay1pby0yMDE3bGt3ZWo3eHBiZ3A2M3g0aGwzMzV5Nm0yNm9ha2dnb2YvcmFjX2Jhc2ljX3NhbXBsZV9wcm9qZWN0X2xlZ2FjeS5pZmM&type=GLOBALID&guid=2cgXCjpDT0ZxBvxMSr3pfm
      
      1. By triggering LOCATE_ELEMENT_EVENT (See public/index.html):
      // Trigger event from iframe's parent page
      const guid = event.target.getAttribute('data‑guid');
      const idType = event.target.getAttribute('data‑idType');
      
      if (!idType || !guid) return;
      
      const iframeWind = viewerIframe.contentWindow;
      iframeWind.NOP_VIEWER.fireEvent({
          type: iframeWind.Autodesk.ADN.ElementLocator.Event.LOCATE_ELEMENT_EVENT,
          idType,
          guid
      });
      

      (by DONG HYUK LEEEason Kang)

      參考文件

      1. Is it possible to implement the highlight function in Forge Viewer by receiving a specific ID from an external web page? (CC BY‑SA 2.5/3.0/4.0)

#forge #autodesk-forge #autodesk






相關問題

forge.facebook.authorize 不重定向網站 (forge.facebook.authorize not redirecting for website)

iOS6 和 XCode 4.5 - 無法將應用上傳到應用商店 (iOS6 and XCode 4.5 - Unable to upload app to app store)

trigger.io facebook аўтарызаваць «нечаканы збой» з iphone 5 (trigger.io facebook authorize "unexpected failure" with iphone 5)

Đóng ứng dụng di động Trigger.io forge qua javascript (Android / iOS) - để áp dụng Tải lại (Closing a Trigger.io forge mobile app via javascript (Android / iOS) - in order to apply Reload)

為什麼@inject 方法在實時服務器上不起作用 (why @inject method is not working on the live server)

在 GForge、LDAP 身份驗證中,如何設置屬性 authenticatedBind 的值? (In GForge, LDAP Authentication, how do I set the value for the property authenticatedBind?)

創建一個類對象列表以將它們與另一個類對象進行比較 (creating a list of class objects to compare them with another class object)

Autodesk Forge 如何保存和顯示標記 (Autodesk Forge how to save and show Markups)

如何在 Forge Laravel 網站上進行 404 錯誤的高級調試 (How to do advanced debugging of 404 Error on Forge Laravel Website)

Forge:選擇單個零件:無法在零件之間切換 (Forge: Select a single part: cant switch between parts)

為什麼 composer.json 需要 PHP 7.4 但服務器正在運行 PHP 7.3 不會中斷部署? (Why composer.json requires PHP 7.4 but server is running PHP 7.3 doesn't break in deployment?)

是否可以通過從外部網頁接收特定 ID 來實現 Forge Viewer 中的突出顯示功能? (Is it possible to implement the highlight function in Forge Viewer by receiving a specific ID from an external web page?)







留言討論