亚洲动漫在线观看-亚洲动漫第一页-亚洲丁香婷婷-亚洲丶国产丶欧美一区二区三区-亚洲第一综合网站-亚洲第一永久色

顯示源代碼
鏡頭運動
 開發文檔
            <!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <script src="http://bigemap.com/offline_data/newjunbiao/vue.js"></script>
        <link
            href="http://ua.bigemap.com:30081/bmsdk/bigemap-gl.js/v1.1.0/Widgets/widgets.css"
            rel="stylesheet"
        />
        <script src="http://ua.bigemap.com:30081/bmsdk/bigemap-gl.js/v1.1.0/bigemap-gl.js"></script>
        <!-- elementui -->
        <script src="http://bigemap.com/offline_data/newjunbiao/elementui.js"></script>
        <link
            rel="stylesheet"
            href="http://bigemap.com/offline_data/newjunbiao/elementui.css"
        />
        <title>相機鏡頭按照步驟運動</title>
        <style>
            * {
                margin: 0;
                padding: 0;
            }
            html,
            body {
                width: 100%;
                height: 100%;
            }
            #app {
                width: 100%;
                height: 100%;
            }
            #baseMap {
                width: 100%;
                height: 100%;
            }
            .tools {
                position: absolute;
                z-index: 9;
                top: 40px;
                right: 60px;
                width: 200px;
                height: 40px;
                display: flex;
                align-items: center;
            }
        </style>
    </head>
    <body>
        <div id="app">
            <div id="baseMap"></div>
        </div>
        <script>
            window.viewer = null;
            window.onload = () => {
                new Vue({
                    el: "#app",
                    data() {
                        return {};
                    },
                    mounted() {
                        this.initMap();
                    },
                    methods: {
                        //初始化地圖
                        initMap() {
                            bmgl.Config.HTTP_URL =
                                "http://ua.bigemap.com:30081/bmsdk/";
                            viewer = new bmgl.Viewer("baseMap", {
                                mapId: "bigemap.dc-satellite",
                                infoBox: false,
                                selectionIndicator: false,
                                requestRenderMode: false,
                            });
                            viewer.camera.setView({
                                destination: bmgl.Cartesian3.fromDegrees(
                                    102,
                                    30,
                                    10000
                                ),
                            });
                            setTimeout(() => {
                                this.stepFly(viewer, {
                                    // 目的地經度
                                    lon: 104,
                                    //  目的地緯度
                                    lat: 30,
                                    // 目的地的鏡頭高度
                                    height: 23000,
                                    // 目的地的鏡頭旋轉角度
                                    orientation: {
                                        heading: bmgl.Math.toRadians(90),
                                        roll: 0,
                                        pitch: 0,
                                    },
                                });
                            },4000);
                        },
                        RetuendefaultValue(a, b) {
                            if (a !== undefined && a !== null) {
                                return a;
                            }
                            return b;
                        },
                        //按步驟調整飛行位置
                        stepFly(viewer, options) {
                            const { camera } = viewer;
                            const step1 = this.RetuendefaultValue(
                                options.firstDuration,
                                3
                            );
                            const step2 = this.RetuendefaultValue(
                                options.secondDuration,
                                3
                            );
                            const step3 = this.RetuendefaultValue(
                                options.thirdDuration,
                                3
                            );

                            const cartographic = options.destination;
                            // 第一步調整鏡頭位置
                            const cur_height =
                                viewer.camera._positionCartographic.height;
                            const firstStep = bmgl.Cartesian3.fromDegrees(
                                options.lon,
                                options.lat,
                                cur_height
                            );
                            // 第二步調整鏡頭高度
                            const secondStep = bmgl.Cartesian3.fromDegrees(
                                options.lon,
                                options.lat,
                                options.height
                            );
                            return new Promise((resolve) => {
                                camera.flyTo({
                                    destination: firstStep,
                                    duration: step1,
                                    complete() {
                                        camera.flyTo({
                                            destination: secondStep,
                                            duration: step2,
                                            complete() {
                                                camera.flyTo({
                                                    destination: secondStep,
                                                    orientation:
                                                        options.orientation,
                                                    duration: step3,
                                                    complete() {
                                                        resolve();
                                                    },
                                                });
                                            },
                                        });
                                    },
                                });
                            });
                        },
                    },
                    beforeDestroy() {
                        viewer.destroy();
                        viewer = null;
                    },
                });
            };
        </script>
    </body>
</html>
        
主站蜘蛛池模板: 四虎影视在线影院在线观看观看 | 日韩在线观看一区二区不卡视频 | 91九色在线视频 | 亚欧洲乱码专区视频 | 日本福利视频一区 | 精品性影院一区二区三区内射 | 男生同性啪视频在线观看 | 变态np虐高h| 深夜福利免费在线观看 | 国产亚洲欧美一区二区三区 | 国产成人青草视频 | 男人边吃奶边做好爽视频免费 | 韩国漂亮美女三级在线观看 | 亚洲欧美一区二区三区在饯 | 2022天堂岛日产 | 92国产福利久久青青草原 | 亚洲成A人片在线观看中文L | 亚洲va欧美va国产va天堂影 | 国产裸露片段精华合集链接 | 国产亚洲精品第一综合另类 | 香蕉视频久久 | 日本xxxxx69hd日本 | 国产欧美日韩在线不卡第一页 | 日日干天天爽 | 日本男男gayxxxxx免费 | 俄罗斯美女尿尿 | 2021国产精品成人免费视频 | 无限资源在线观看完整版免费下载 | 超91在线| 毛片免费的 | 免费日本视频 | 欧美日韩精品免费一区二区三区 | 亚洲精品资源 | 色婷婷六月丁香在线观看 | 全肉一女n男np高h乳 | 特黄特黄一级片 | 毛片www| 国产一区日韩二区欧美三区 | 精品在线免费观看视频 | 99热这里只有精品在线播放 | 99九九精品视频 |