Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dev:viewer:sdk:examples_js:doaction [2020/07/13 12:14]
pieter
dev:viewer:sdk:examples_js:doaction [2023/10/04 12:44] (current)
pieter
Line 1: Line 1:
-====== Example doAction ======+====== Example: Using doAction ====== 
 + 
 +The example below uses ''doAction'' to do the following things after workspace open :  
 +  * Move the sidebar to the right 
 +  * Start a free area measurement (you can start measuring immediately).
  
 <html> <html>
-    <script src="https://cdn.3dmapping.cloud/20.7.0/javascript/orbitgt_3dm_sdk.js"></script+<script
-    <div id="m3dviewer"/>+    let exampleUrl = "https://cdn.3dmapping.cloud/examples_stable/example15.html"
 +</script>
  
-    <script type="text/javascript">+<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.2.1/styles/default.min.css" 
 +    integrity="sha512-kZqGbhf9JTB4bVJ0G8HCkqmaPcRgo88F0dneK30yku5Y/dep7CZfCnNml2Je/sY4lBoqoksXz4PtVXS4GHSUzQ==" 
 +    crossorigin="anonymous" />
  
-        var viewer;+<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.2.1/highlight.min.js" 
 +    integrity="sha512-Ypjm0o7jOxAd4hpdoppSEN0TQOC19UtPAqD+4s5AlXmUvbmmS/YMxYqAqarQYyxTnB6/rqip9qcxlNB/3U9Wdg==" 
 +    crossorigin="anonymous"></script>
  
-        var AMap orbitgt.mapping3d.sdk.viewer.AMap; +<span id="example"></span> 
-        var AList = orbitgt.mapping3d.sdk.viewer.AList; +<br /> 
-        var Constants = orbitgt.mapping3d.sdk.viewer.Constants; +<br /> 
-        var SDKViewer orbitgt.mapping3d.sdk.viewer.SDKViewer; +<input type="button" value="Show Source" onclick="toggleShowSource()"></input> 
-        var CoordinatePath orbitgt.mapping3d.sdk.viewer.CoordinatePath;    +<span id="showsource"></span>
-        var CoordinatePart orbitgt.mapping3d.sdk.viewer.CoordinatePart; +
-        var Coordinate orbitgt.mapping3d.sdk.viewer.Coordinate; +
-        var MapObject = orbitgt.mapping3d.sdk.viewer.MapObject; +
-        var Color = orbitgt.mapping3d.sdk.viewer.Color; +
-         +
-        /** +
-         * Called when the viewer component is ready for interaction. +
-         */ +
-        function handleReady() { +
-            viewer.onWorkspaceOpened.add(handleWorkspaceOpened); +
-        }+
  
-        /** +<script>
-         * Called when a workspace was opened. +
-         */ +
-        function handleWorkspaceOpened() { +
-            viewer.doAction("setSetting:sidebarLeftVisible:false"); +
-            viewer.doAction("startMeasure:area_free"); +
-        }+
  
-        /** +    let toggleShowSource = () => { 
-         * Called when the page is full loaded. +        let element = document.getElementById("showsource"); 
-         */ +        element.style.display element.style.display == 'none' ? 'block' : 'none'
-        function handleDOMReady() { +    }
-            // Create viewer startup options +
-            var loginOptions new AMap()+
-            loginOptions.set(Constants.LOGIN_MODE, Constants.LOGINMODE_GUEST_CLOUD); +
-            loginOptions.set(Constants.LOGIN_PUBLICATION_PUBLIC_ID, "R4hyyTRFUQPbnBlzZf7Q"); +
-            var options new AMap(); +
-            options.set(Constants.STARTUP_AUTO_LOGIN,loginOptions); +
-            // Create viewer +
-            var appElement = document.getElementById("m3dviewer"); +
-            viewer new SDKViewer("example application",appElement,options); +
-            viewer.setSize(1000,500); +
-            viewer.isReady.then(handleReady)+
-        }+
  
-        // Wait for page to load +    fetch(exampleUrl) 
-        document.addEventListener("DOMContentLoaded", handleDOMReady);+        .then(response => response.text()
 +        .then(text => {
  
-   </script> +            try { 
-   +                // add example in iframe 
-</html>+                let frame = document.createElement("iframe"); 
 +                frame.style.border = 'none'; 
 +                frame.style.overflow = 'auto'; 
 +                frame.width = 950; 
 +                frame.height = 420; 
 +                frame.srcdoc = text; 
 +                document.getElementById("example").appendChild(frame);
  
 +                // add 'showsource' section
 +                let pre = document.createElement("pre");
 +                pre.classList.add("code");
 +                pre.classList.add("html4strict");
 +                pre.textContent = text;
 +                document.getElementById("showsource").style.display = 'none';
 +                document.getElementById("showsource").style.fontSize = '12px';
 +                document.getElementById("showsource").appendChild(pre);
 +
 +                // highlight
 +                hljs.highlightBlock(pre);
 +
 +            } catch (error) { console.error(error); }
 +
 +        });
 +
 +</script>
 +
 +</html>
 
Last modified:: 2020/07/13 12:14