BIGEMAP卫星地图_高清卫星地图_北斗高清地图_地图软件_矢量地图数据_专题地图

顯示源代碼
點擊點位展示信息
 開發文檔
            <!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"
        />
        <!-- 引入turf.min.js -->
        <script src="http://bigemap.com/offline_data/newjunbiao/turf.min.js"></script>
        <!-- popupLayer 相關的插件 -->
        <script src="http://bigemap.com/offline_data/newjunbiao/bmgl-plot.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;
            }
            .div-layer {
                background-color: rgba(59, 67, 77, 0.8);
                width: 400px;
                /* height: 210px; */
                border-radius: 4px;
            }
            .div-layer .top {
                width: 400px;
                height: 40px;
                padding: 2px 4px;
                box-sizing: border-box;
            }
            .div-layer .top .title {
                color: white;
                float: left;
                line-height: 36px;
                width: 100%;
                border-bottom: 1px solid #3ea6ff;
            }
            .div-layer .top .close {
                color: white;
                /* font-size: 1.5rem; */
                position: absolute;
                top: 0px;
                right: 4px;
            }
            .div-layer .info {
                width: 400px;
                /* height: 180px; */
            }
            .div-layer .info .pic {
                width: 400px;
                height: 120px;
                margin-bottom: 2px;
                margin-top: 2px;
                box-sizing: border-box;
                padding: 0 6px;
                aspect-ratio: 1.618;
                /* aspect-ratio: 16/9; */
            }
            .div-layer .info .kt {
                width: 400px;
                box-sizing: border-box;
                padding-left: 4px;
                color: white;
            }
            .div-layer .info .des {
                color: white;
                height: 125px;
                font-family: "楷體";
                /* margin-bottom: 4px; */
                box-sizing: border-box;
                padding: 0 2px;
                text-indent: 2em;
            }
            .container {
                width: 400px;
                height: 20px;
                display: flex;
                justify-content: center;
                /* align-items: center; */
            }
            .container .tri {
                width: 0;
                height: 0;
                border-left: 8px solid transparent;
                border-right: 8px solid transparent;
                border-top: 12px solid #333;
            }
        </style>
    </head>
    <body>
        <div id="app">
            <div id="baseMap"></div>
        </div>
        <script>
            window.viewer = null;
            window.popupLayer = null;
            window.manager = null;
            window.onload = () => {
                new Vue({
                    el: "#app",
                    data() {
                        return {
                            spotsInfo: [
                                {
                                    name: "成都大熊貓繁育研究基地",
                                    pos: [
                                        104.14398325543108, 30.735157583632084,
                                    ],
                                    info: "基地內有很多萌萌的大熊貓,你可以近距離的去觀賞這些萌噠噠的國寶們。基地位于成都市北郊,距市區約10公里,建設完全模擬大熊貓野外生活環境,建有湖泊、溪流、竹林、草坪等。",
                                    pic: "/offline_data/dxmfyjd.jpg",
                                },
                                {
                                    name: "武侯祠",
                                    pos: [
                                        104.04510500872658, 30.64370579271404,
                                    ],
                                    info: "成都武侯祠是紀念劉備、諸葛亮等蜀漢英雄人物廟宇所在。它肇始于蜀漢昭烈帝章武元年(221年)劉備惠陵修建時,在修建惠陵的同時也修建了漢昭烈廟。",
                                    pic: "/offline_data/whc.jpg",
                                },
                                {
                                    name: "杜甫草堂",
                                    pos: [
                                        104.02601891259792, 30.662641734706895,
                                    ],
                                    info: "唐代著名詩人杜甫流寓成都時的故居。杜甫在此居住近四年,創作了上百首詩歌,這里因此被視為中國文學史上的“圣地”。現今的杜甫草堂是經宋、元、明、清多次修復而成。",
                                    pic: "/offline_data/dfct.jpg",
                                },
                                {
                                    name: "青城后山",
                                    pos: [
                                        103.61355135540855, 30.991447308643618,
                                    ],
                                    info: "位于青城山(前山)后,山腳有泰安古鎮和泰安寺。后山的宮殿香火雖不如前山旺盛,但清幽潔凈更勝一籌,這里特別適合休閑徒步游,比起熱鬧的前山,更能悠然的體會“青城天下幽”。找個住所,小住兩天,相當的愜意。",
                                    pic: "/offline_data/qchs.jpg",
                                },
                                {
                                    name: "都江堰景區",
                                    pos: [
                                        103.61768065261475, 31.002550713300458,
                                    ],
                                    info: "都江堰景區,位于都江堰市城西岷江干流上,由秦國蜀郡太守李冰及其子于西元前256年左右修建,是目前中國保存完整的古代水利工程。工程由魚嘴分水堤、飛沙堰溢洪道、寶瓶口引水口三大主體工程和百丈堤、人字堤等附屬工程構成,把洶涌的岷江分隔成外江和內江,外江排洪,內江引水灌溉,使川西平原成為了“天府之國”。",
                                    pic: "/offline_data/djy.jpg",
                                },
                            ],
                        };
                    },
                    mounted() {
                        // console.log(turf);
                        this.initMap();
                    },
                    methods: {
                        //初始化地圖
                        initMap() {
                            var _this = this;
                            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,
                            });
                            //創建路網相關的地圖圖層
                            let roadNet = new bmgl.ImageryLayer(
                                new bmgl.BMImageryProvider({
                                    mapId: "bigemap.dc-street",
                                })
                            );
                            // 將圖層疊加到地球上
                            viewer.imageryLayers.add(roadNet);
                            // 是否支持圖像渲染像素化處理
                            if (
                                bmgl.FeatureDetection.supportsImageRenderingPixelated()
                            ) {
                                viewer.resolutionScale =
                                    window.devicePixelRatio;
                            }
                            //開啟抗鋸齒,讓圖像更加順滑
                            viewer.scene.postProcessStages.fxaa.enabled = true;
                            //初始化事件處理對象
                            let handler = new bmgl.ScreenSpaceEventHandler(
                                viewer.scene.canvas
                            );
                            handler.setInputAction((e) => {
                                let pos = e.position;
                                _this.triggerFn(pos);
                            }, bmgl.ScreenSpaceEventType.LEFT_CLICK);

                            manager = new bmgl.div.DivLayerManager(viewer, {
                                click: function (detail, position) {
                                    // console.log(detail, position);
                                },
                            });

                            this.loadPoints();
                        },
                        // 點擊事件處理彈窗
                        triggerFn(endPosition) {
                            let obj = viewer.scene.pick(endPosition);
                            console.log("obj", obj);
                            if (bmgl.defined(obj)) {
                                if (obj.id && obj.id.extraData) {
                                    var myData = obj.id.extraData;
                                    if (popupLayer != null) {
                                        manager.removeLayer(popupLayer);
                                        popupLayer = null;
                                    }
                                    let pp = myData.pos;
                                    popupLayer = new bmgl.div.DivLayer(
                                        `<div class='div-layer'>
                                            <div class='top'>
                                                <h5 class='title'>景點名稱: ${myData.name}</h5>
                                                <span class="close">x</span>
                                            </div>
                                            <div class='info'>
                                                <image class="pic" src='${myData.pic}'/>
                                                <h5 class="kt">景點簡介:</h5>
                                                <p class="des">${myData.info}<p>
                                            </div>
                                        </div>
                                        <div class='container'>
                                            <div class='tri'></div>
                                        </div>
                                        `,
                                        pp,
                                        {
                                            offset: {
                                                x: 0,
                                                y: -20,
                                            },
                                        }
                                    );
                                    manager.addLayer(popupLayer);
                                }
                            } else {
                                if (popupLayer != null) {
                                    manager.removeLayer(popupLayer);
                                    popupLayer = null;
                                }
                                return;
                            }
                        },
                        loadPoints() {
                            this.spotsInfo.forEach((v, i) => {
                                let pos = bmgl.Cartesian3.fromDegrees(...v.pos);
                                let point = viewer.entities.add({
                                    position: pos,
                                    billboard: {
                                        image: "/offline_data/newscene.png",
                                        // width: 16,
                                        // height: 16,
                                    },
                                });
                                //給point對象綁定一些額外的數據
                                point.extraData = {
                                    name: v.name,
                                    pos: pos,
                                    info: v.info,
                                    pic: v.pic,
                                };
                            });
                            viewer.camera.setView({
                                destination:bmgl.Cartesian3.fromDegrees(104.14281724669924,30.243039581360712,38497.929384911135),
                                orientation:{
                                    heading:6.197491954720128,
                                    pitch:-0.6900354054675653,
                                    roll:0.0017327513588600851,
                                }
                            })
                        },
                    },
                    beforeDestroy() {
                        viewer.destroy();
                        viewer = null;
                    },
                });
            };
        </script>
    </body>
</html>
        
主站蜘蛛池模板: 铁谷网-垂直于铸造产业链服务平台、原材料采购网、行业资讯网 | 气泡式洗菜机-气泡喷淋清洗机-喷淋清洗风干线-诸城市迪凯工业装备有限公司 | 著名刑事诉讼律师_刑事辩护律师★王平聚【清华博士/刑法教授】 | 污泥处理设备|污泥固化固液分离压泥机压滤机厂家-山东冠诚开山贸易 | 食用油灌装机-油类食用油灌装设备-液体灌装机_青州市惠联灌装机械 | 浙江三龙通用机械有限公司 圆丝机,拉丝机,复合机 | 橡胶粉碎机_轮胎粉碎机_橡胶切条机_橡胶粉碎机价格_河南鑫世昌机械制造有限公司 | 热水工程|空气能热水工程|超低温采暖工程|太阳能热水工程|空气源热泵厂家|炬邦热能设备有限公司 热熔钻孔机【优质厂家】_多年热熔钻设备研发制造经验 | 全自动红外测油仪|全自动COD分析仪|BOD5分析仪|昂林官网 | 聚丙烯酰胺,聚合氯化铝,重金属捕捉剂,污泥调理剂,活性氧化铝,生石灰,反渗透阻垢剂,工业葡萄糖,硫酸铝,果壳活性炭,柱状活性炭,蜂窝活性炭,石英砂,锰砂-北京雁归来环保科技有限公司-以真诚为立足之本,以质量为生存之本,愿与海内外同仁共创双赢。雁归来人一路走来,气贯长虹,勇锐盖过怯弱,进取压倒苟安!我们紧扣时代脉搏,专注水处理、继往开来! | 景观造雾_人造雾设备_雾森系统_冷雾降温_雾化消毒_喷雾除尘厂家-成都景程雾森 | 监控工程,安防监控公司,北京监控安装,北京安装监控,安装摄像头,北京监控维保,监控施工,北京监控维修,监控弱电工程,监控器安装,监控维护保养,监控工程设计,北京监控设备维修,监控报警安装,北京北方合力科技有限公司 | 深圳起重机,龙门吊,天车起重工程,电动葫芦,液压升降货梯-深圳市德力起重机械有限公司 | 氧化镁|轻质氧化镁厂家|活性氧化镁价格【不好用免费退换】镁神股份 | 湖南九农王机电设备有限公司官网 | 深圳市金正电器有限公司| 上海建发物资有限公司| 苏州注塑|无锡注塑|上海注塑|苏州汉科精密注塑有限公司 | 水热反应釜厂家_水热反应釜价格_水热合成反应釜批发-仪贝尔仪器 - 水热釜,水热反应釜,水热反应釜厂家,水热反应釜价格,水热反应釜型号,水热反应釜内衬,水热反应釜25ml,水热反应釜50ml,水热反应釜100ml,水热合成反应釜 | 伸缩接头,限位伸缩接头,传力接头,可拆卸接头,橡胶接头,衬四氟橡胶接头,橡胶软连接,橡胶补偿器,防水套管- 巩义市隆盛管道设备有限公司 | 气泡式洗菜机-气泡喷淋清洗机-喷淋清洗风干线-诸城市迪凯工业装备有限公司 | 重庆电磁流量计_水表厂家_液位计_重庆青天特克科技有限公司 | 激光切管机_等离子切管机_相贯线切管机厂家|服务为先-山东美峰智能设备有限公司 | 石家庄华龙鼎电动门,石家庄电动门电话,石家庄电动门配件,石家庄电动门维修电话,石家庄电动门安装电话,石家庄华龙电动门 | 健身器材_健身器材厂_健身器材厂家-徐州兰士健身器材有限公司 | 机械智能停车设备_智能机械式立体停车库_立体车库停车设备租赁_山东科博机械车库 | 球磨机配件_烘干机配件_回转窑配件_球磨机小齿轮_球磨机大齿轮-巩义市兴农机械制造公司 | 深圳网站建设-量身定制原创设计-专业网站建设公司【企术】 | 无塔供水设备_无负压供水设备_变频供水设备_净化过滤设备_加油站油罐_S/F双层油罐_开封市东方供水设备有限公司 | 专业无机盐,化工产品检测公司,水处理剂检测公司,第三方水质检测机构—准诺检测 | 展柜设计定制-品牌展柜订做-展柜制作厂家「广州嘉艺展柜」 | 医用空气净化消毒机,医用床单位消毒机,无磁空气消毒机,紫外线空气消毒机厂家-南昌市扬帆环保设备有限公司 | 学汽修-汽修培训-郑州万通汽车学校[官网] | 心理咨询室设备_音乐放松椅_心理测评系统_情绪宣泄设备厂家 | 沈阳资质代办_代办建筑资质「快」-【华廷元】沈阳代办公司首页- 沈阳机电一体化电热锅炉_沈阳蓄热式电锅炉_沈阳壁挂式电锅炉【沈阳远鹏电热供水设备工程安装有限公司】 | 拼接屏-大屏液晶拼接屏厂家-上海LED无缝拼接屏—上海素希 | 停车场收费管理系统,通道闸系统,门禁系统,东莞停车场收费管理系统,东莞通道闸系统,-东莞市骄阳交通设备有限公司 | 徐州护栏,铝艺栏杆,铝艺大门,铝艺栏杆门,别墅铝艺大门-徐州桂丰金属科技有限公司 | 太阳能杀虫灯-农业用杀虫灯-果园灭虫灯厂家「尚科杀虫灯| | 上海慧泰仪器制造有限公司_一体型马弗炉-可控真空干燥箱-强光稳定性试验箱 | 呼吸家官网|肺功能检测仪生产厂家|国产肺功能仪知名品牌|肺功能检测仪|肺功能测试仪|婴幼儿肺功能仪|弥散残气肺功能仪|肺功能测试系统|广州红象医疗科技有限公司|便携式肺功能仪|大肺功能仪|呼吸康复一体机|儿童肺功能仪|肺活量计|医用简易肺功能仪|呼吸康复系统|肺功能仪|弥散肺功能仪(大肺)|便携式肺功能检测仪|肺康复|呼吸肌力测定肺功能仪|肺功能测定仪|呼吸神经肌肉刺激仪|便携式肺功能 |