簡體   English   中英

向Forge Viewer添加按鈕

[英]Adding buttons to the Forge Viewer

我是一位開發人員,當前正在嘗試向Autodesk Forge Viewer添加另一個按鈕。 我只能在Autodesk網站上找到一個可以解釋這一點的示例,並且我覺得我可以通過討論或示例來了解更多。

我目前有一個非常基本的查看器,要求輸入存儲桶名稱和模型,然后在上傳模型后,它會在查看器中顯示所有通用按鈕的模型,我該如何插入自己的按鈕?

以下是我的基本查看器中使用的viewer.html:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <script src="https://developer.api.autodesk.com/viewingservice/v1/viewers/three.min.css"></script>
    <link rel="stylesheet" href="https://developer.api.autodesk.com/viewingservice/v1/viewers/style.min.css" />
    <script src="https://developer.api.autodesk.com/viewingservice/v1/viewers/viewer3D.min.js"></script>
</head>
<body onload="initialize()">
<div id="viewer" style="position:absolute; width:90%; height:90%;"></div>
<script>
    function authMe () { return ('eyJhbGciOiJIUzI1NiIsImtpZCI6Imp3dF9zeW1tZXRyaWNfa2V5In0.eyJjbGllbnRfaWQiOiJJTzY5cVJGYk5kNGlVcWlnS3FnR2xzREdzSk1zQVNBYyIsImV4cCI6MTUzNjMzMDYwMiwic2NvcGUiOlsiZGF0YTpyZWFkIiwiZGF0YTp3cml0ZSIsImJ1Y2tldDpjcmVhdGUiLCJidWNrZXQ6cmVhZCJdLCJhdWQiOiJodHRwczovL2F1dG9kZXNrLmNvbS9hdWQvand0ZXhwNjAiLCJqdGkiOiJ6Q0U5R0FMOGFHNWhOdlFFSjhqeExFZDVqTjc1MXV1UjA0UENIME9mYzRRT0k5b2pkRXhyeUE1MmJwdHdsdU5XIn0.FM1P50Ldu1H1LygYXwtP77Kr3128xFZKMgoaBmtXqF0') ; }

    function initialize () {
        var options ={
            'document' : "urn:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6Zm9yZ2UtY3NoYXJwLXNhbXBsZS1hcHAtaW82OXFyZmJuZDRpdXFpZ2txZ2dsc2Rnc2ptc2FzYWMvbXktZWxlcGhhbnQub2Jq",
            'env': 'AutodeskProduction',
            'getAccessToken': authMe
        } ;
        var viewerElement =document.getElementById ('viewer') ;
        //var viewer =new Autodesk.Viewing.Viewer3D (viewerElement, {}) ; / No toolbar
        var viewer =new Autodesk.Viewing.Private.GuiViewer3D (viewerElement, {}) ; // With toolbar
        Autodesk.Viewing.Initializer (options, function () {
            viewer.initialize () ;
            loadDocument (viewer, options.document) ;
        }) ;
    }
    function loadDocument (viewer, documentId) {
        // Find the first 3d geometry and load that.
        Autodesk.Viewing.Document.load (
            documentId,
            function (doc) { // onLoadCallback
                var geometryItems =[] ;
                geometryItems =Autodesk.Viewing.Document.getSubItemsWithProperties (
                    doc.getRootItem (),
                    { 'type' : 'geometry', 'role' : '3d' },
                    true
                ) ;
                if ( geometryItems.length <= 0 ) {
                    geometryItems =Autodesk.Viewing.Document.getSubItemsWithProperties (
                        doc.getRootItem (),
                        { 'type': 'geometry', 'role': '2d' },
                        true
                    ) ;
                }
                if ( geometryItems.length > 0 )
                    viewer.load (
                        doc.getViewablePath (geometryItems [0])//,
                        //null, null, null,
                        //doc.acmSessionId /*session for DM*/
                    ) ;
            },
            function (errorMsg) { // onErrorCallback
                alert("Load Error: " + errorMsg) ;
            }//,
            //{
            //  'oauth2AccessToken': authMe (),
            //  'x-ads-acm-namespace': 'WIPDM',
            //  'x-ads-acm-check-groups': 'true',
            //}
        ) ;
    }
</script>
</body>
</html>

在這里,您可以找到創建基本骨架的示例,我們在大多數示例中都使用了該骨架,以將按鈕添加到查看器的UI工具欄。

http://learnforge.autodesk.io/#/viewer/extensions/skeleton

暫無
暫無

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

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