顯示源代碼
                白膜點(diǎn)擊高亮
                 開發(fā)文檔
                            <!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>
                            let viewer = null;
                            // 設(shè)置高亮元素
                            let hightLighted = {
                                feautre: undefined,
                                originalColor: new bmgl.Color(),
                            };
                            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,
                                            });
                                            // 是否支持圖像渲染像素化處理
                                            if (
                                                bmgl.FeatureDetection.supportsImageRenderingPixelated()
                                            ) {
                                                viewer.resolutionScale =
                                                    window.devicePixelRatio;
                                            }
                                            //開啟抗鋸齒,讓圖像更加順滑
                                            viewer.scene.postProcessStages.fxaa.enabled = true;
                                            let handler = new bmgl.ScreenSpaceEventHandler(
                                                viewer.scene.canvas
                                            );
                                            //設(shè)置點(diǎn)擊事件
                                            handler.setInputAction(function (e) {
                                                // console.log(`eeee`, e);
                                                // 清除之前的高亮元素
                                                if (bmgl.defined(hightLighted.feature)) {
                                                    hightLighted.feature.color =
                                                        hightLighted.originalColor;
                                                    hightLighted.feature = undefined;
                                                }
                
                                                // 選擇新要素
                                                const pickedFeature = viewer.scene.pick(
                                                    e.position
                                                );
                                                if (!bmgl.defined(pickedFeature)) {
                                                    return;
                                                }
                
                                                // 存儲(chǔ)選中要素的信息
                                                hightLighted.feature = pickedFeature;
                                                console.log(`picked`, pickedFeature);
                                                bmgl.Color.clone(
                                                    pickedFeature.color,
                                                    hightLighted.originalColor
                                                );
                                                // 高亮選中元素
                                                pickedFeature.color = bmgl.Color.RED;
                                            }, bmgl.ScreenSpaceEventType.LEFT_CLICK);
                
                                            this.init3dTiles();
                                        },
                                        async init3dTiles() {
                                            viewer.scene.globe.depthTestAgainstTerrain = false;
                                            window.tilesets = await new bmgl.BM3DTileset({
                                                url: "/offline_data/demoData/tileset.json",
                                            });
                                            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,
                                                        0.0
                                                    );
                                                    let translation = bmgl.Cartesian3.subtract(
                                                        offset,
                                                        surface,
                                                        new bmgl.Cartesian3()
                                                    );
                                                    tileset.modelMatrix =
                                                        bmgl.Matrix4.fromTranslation(
                                                            translation
                                                        );
                                                })
                                                .otherwise(function (error) {
                                                    console.log(error);
                                                });
                                        },
                                    },
                                    beforeDestroy() {
                                        viewer.destroy();
                                        viewer = null;
                                    },
                                });
                            };
                        </script>
                    </body>
                </html>
                        
                主站蜘蛛池模板: 99热这里有精品| 久久精品美女视频| 老师的胸好大好软| 国产精品无圣光一区二区| 中文字幕一区日韩精品| 果冻传媒国产电影免费看| 人妻无码久久一区二区三区免费| 蝌蚪网站免费观看| 国产精品一区二区久久国产| jizz大全欧美| 挠胸挠乳尖视频| 久久青青成人亚洲精品| 欧美熟妇另类久久久久久不卡 | 最新日韩在线观看| 天天狠天天透天干天天怕∴| 久久综合精品国产一区二区三区| 熟妇人妻一区二区三区四区| 国产一区二区三区内射高清| аⅴ中文在线天堂| 日本特黄高清免费大片爽| 亚洲成人高清在线| 精品91自产拍在线| 国产亚洲人成无码网在线观看| free性欧美另类高清| 天下第一社区视频welcome| 中文字幕无码免费久久| 最近更新中文字幕在线| 亚洲精品国产精品国自产观看| 精品国产国产综合精品| 国产亚洲精品成人久久网站| 中文字幕动漫精品专区| 国语精品91自产拍在线观看二区| 三个黑人上我一个经过| 日本午夜精品一区二区三区电影 | www.怡红院| 我被继夫添我阳道舒服男男| 久久精品国产成人| 欧美人交性视频在线香蕉| 亚洲精品成人av在线| 看**视频一一级毛片| 吃奶呻吟打开双腿做受视频|