久久久久久一区_中文字幕在线不卡_精品不卡_久久久网_精品亚洲一区二区三区在线观看_欧美精品一区二区三区在线四季

顯示源代碼
積雪效果
 開發文檔
            <!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"
        />
        <script src="/offline_data/snoweffect.js"></script>
        <!-- dat.gui.js -->
        <script src="/offline_data/dat.gui.min.js"></script>
        <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,
                            });
                            this.load3dtiles();
                            const thickness = 0.8;
                            const speed = 300;
                            const density = 10;
                            const snow = new SnowEffect({
                                thickness,
                                speed,
                                density,
                            });
                            snow.addTo(viewer);
                            this.initBase(snow);
                        },
                        //加載傾斜攝影效果
                        load3dtiles() {
                            let tilesets = new bmgl.BM3DTileset({
                                url: "/offline_data/dayanta/tileset.json",
                                maximumScreenSpaceError: 16,
                            });
                            tilesets.readyPromise
                                .then(function (tileset) {
                                    viewer.scene.primitives.add(tileset);
                                    let default_HeadingPitchRange =
                                        new bmgl.HeadingPitchRange(
                                            0.0,
                                            -0.5,
                                            tileset.boundingSphere.radius * 2.0
                                        );
                                    viewer.zoomTo(
                                        tileset,
                                        default_HeadingPitchRange
                                    );
                                    let cartographic =
                                        bmgl.Cartographic.fromCartesian(
                                            tileset.boundingSphere.center
                                        );
                                    let delta_lng = 0,
                                        delta_lat = 0;
                                    let surface = bmgl.Cartesian3.fromRadians(
                                        cartographic.longitude + delta_lng,
                                        cartographic.latitude + delta_lat,
                                        0.0
                                    );
                                    let offset = bmgl.Cartesian3.fromRadians(
                                        cartographic.longitude + delta_lng,
                                        cartographic.latitude + delta_lat,
                                        -420.0
                                    );
                                    let translation = bmgl.Cartesian3.subtract(
                                        offset,
                                        surface,
                                        new bmgl.Cartesian3()
                                    );
                                    tileset.modelMatrix =
                                        bmgl.Matrix4.fromTranslation(
                                            translation
                                        );
                                })
                                .otherwise(function (error) {
                                    console.log(error);
                                });
                        },
                        //dat.gui
                        initBase(snow) {
                            var _this = this;
                            let gui = new dat.GUI();
                            gui.domElement.style =
                                "position:absolute;top:10px;left:10px;";
                            const object = {
                                speed: 300,
                                density: 10,
                                thickness: 0.8,
                                enable: true,
                            };
                            gui.add(object, "speed", 100, 500, 10)
                                .name("速度")
                                .onChange(function (val) {
                                    snow.speed = val;
                                });
                            gui.add(object, "density", 2, 20, 1)
                                .name("落雪大小")
                                .onChange(function (val) {
                                    snow.density = val;
                                });
                            gui.add(object, "thickness", 0, 1, 0.1)
                                .name("積雪厚度")
                                .onChange(function (val) {
                                    snow.thickness = val;
                                });
                            gui.add(object, "enable")
                                .name("顯示/隱藏")
                                .onChange(function (val) {
                                    snow.enabled = val;
                                });
                        },
                    },
                    beforeDestroy() {
                        viewer.destroy();
                        viewer = null;
                    },
                });
            };
        </script>
    </body>
</html>
        
主站蜘蛛池模板: 久久久男人天堂 | 中文字幕一区二区三区日韩精品 | 中文字幕亚洲在线观看 | 日韩视频免费在线 | 国产综合在线视频 | 久久h| 日韩精品av | 久久精品免费观看 | 久久国产精品成人免费观看的软件 | 欧美三级电影在线播放 | 日韩中文字幕在线观看 | 午夜精选视频 | 国产91在线视频 | 亚洲国产一区二 | 精品三区| a一级片在线观看 | 91精品国产乱码久久久久久久久 | 天天摸夜夜操 | 精品2区 | 成人a网 | 成人欧美一区二区三区在线播放 | 精品久久久久久久久久久 | 欧美成人免费视频 | 久久婷婷网 | 国产综合视频在线观看 | 午夜一级 | 国产在线不卡 | 国产精品久久久久免费a∨ 国产激情一区二区三区 | 亚洲成人久久久 | 娇小12一13sexvideo | 欧美日韩精品一区二区 | 爱啪导航一精品导航站 | 国产目拍亚洲精品99久久精品 | 91久久久精品视频 | 国产欧美精品一区二区三区 | 99久久精品免费看国产免费粉嫩 | 丝袜+亚洲+另类+欧美+变态 | 免费xxxxx在线观看网站软件 | 黄色av电影在线观看 | 一级欧美日韩 | 天天艹逼 |