• Skyline软件二次开发初级——2如何在WEB页面中控制三维地图的观察点坐标和角度


    1.放大:

        <html>

    <head>

            <title>Zoom In</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">
            
            function Init()
            {
                SGWorld.Navigate.ZoomIn();
            }
            
            </script>
        </head>
        <body onload="Init();">
        </body>
    </html>

    2.缩小: 

        <html>

            <head>

            <title>Zoom Out</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">
            
            function Init()
            {
                SGWorld.Navigate.ZoomOut();
            }
            
            </script>
        </head>
        <body onload="Init();">
        </body>
    </html>

    3.放大到街道级别:

         <html> 
    <head>
            <title>Zoom To Street Level</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">

            function Init()
            {
                var position = SGWorld.Navigate.GetPosition();
                position.Altitude = 1000;       // Street level in TerraExplorer corresponds to altitude of 1000m
                position.AltitudeType = 0;      // 0 is relative to terrain;
                SGWorld.Navigate.FlyTo(position, 0); // 0 is fly to
            }
            
            </script>
        </head>
        <body onload="Init();">
        </body>
    </html>

    4.获取摄像机的位置:

         <html> 
    <head>
            <title>Get the current position</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">

            function Init()
            {
                var pos = SGWorld.Navigate.GetPosition();

                alert("Current Position:\n\nX: " + pos.X + "\nY: " + pos.Y + "\nHeight: " + pos.Altitude + "\nYaw: " + pos.Yaw + "\nPitch: " + pos.Pitch);
           }
            
            </script>
        </head>
        <body onload="Init();">
        </body>
    </html>

    5.设置摄像机的位置:

        <html> 
    <head>
            <title>Set the current position</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">

            function Init()
            {
                var pos = SGWorld.Creator.CreatePosition(-71.05216, // X
                                                           42.34569, // Y
                                                           1000,     // Altitude
                                                           0, //AltitudeTypeCode.ATC_TERRAIN_RELATIVE, // Altitude type
                                                           0.0,      // Yaw
                                                          -43.0);     // Pitch
                
                SGWorld.Navigate.SetPosition(pos);
            }
                         
            </script>
        </head>
        <body onload="Init();">
        </body>
    </html>

    6.跳到兴趣点:

    <html>
        <head>
            <title>Set the current position</title>
            <object id="SGWorld" classid="CLSID:3a4f91b1-65a8-11d5-85c1-0001023952c1" style="visibility:hidden;height:0 "></object>
            <script type="text/javascript">
            var popup;

            function Init()
            {
                
                var POI = SGWorld.Creator.CreatePosition(-71.07596, // Point of interest X   
                                                          42.34998, // Point of interest Y
                                                          30,       // Point of interest altitude (30m)
                                                          0,        // Altitude type - relative to terrain
                                                          90.0,     // Direction from which we want to view the point of interest (90.0 means from we are looking east)
                                                         -10.0,     // Pitch from which we want to view the point of interest (looking 10 degree down)
                                                          0,        // Roll
                                                          250);     // The distance we want to be from the point of interest (250m)

                SGWorld.Navigate.JumpTo(POI);
                            
                showPopup();
            }


            function showPopup()
            {
                popup = SGWorld.Creator.CreatePopupMessage("Point Of Interest sample");
                popup.InnerHtml = "<b>Trinity Church Boston</b><br>Distance from camera: 250 meters<br>Looking from west to east";
                SGWorld.Window.ShowPopup(popup);
            }
            
            function onExit()
            {
                if(popup)
                    SGWorld.Window.RemovePopup(popup);
            }
            
            </script>
        </head>
        <body onload="Init();" onunload="onExit();">
        </body>
    </html>
  • 相关阅读:
    JS学习笔记
    JS学习笔记
    编程菜鸟的日记-初学尝试编程-编写函数实现strlen功能(总结考察点)
    编程菜鸟的日记-初学尝试编程-编写函数实现strcpy功能(总结考察点)
    编程菜鸟的日记-初学尝试编程-正整数表达式的四则运算
    编程菜鸟的日记-初学尝试编程-静态链表的建立和输出
    编程菜鸟的日记-初学尝试编程-单链表
    编程菜鸟的日记-初学尝试编程-链表元素快速排序
    编程菜鸟的日记-初学尝试编程-回文数的判断
    编程菜鸟的日记-初学尝试编程-关于测试程序
  • 原文地址:https://www.cnblogs.com/yitianhe/p/2696518.html
Copyright © 2020-2023  润新知