国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久

顯示源代碼
地形剖面
 開發文檔
            <!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"
        />
        <!-- 引入echarts -->
        <script src="/offline_data/echarts.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: 65%;
            }
            #echartsMap {
                width: 100%;
                height: 35%;
                background-color: rgba(39, 44, 54, 0.9);
                overflow: hidden;
            }
            .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 id="echartsMap"></div>
        </div>
        <script>
            window.viewer = null;
            let linesArr = [
                [102.1261597, 30.76446533],
                [102.2689819, 30.78643799],
                [102.3019409, 30.84686279],
                [102.3912048, 30.96221924],
                [102.5354004, 30.98144531],
                [102.6425171, 31.13800049],
                [102.6287842, 31.26434326],
                [102.9542542, 31.28082275],
                [103.0133057, 31.04736328],
                [102.7867127, 30.8454895],
                [102.9212952, 30.6312561],
                [103.2220459, 30.66558838],
                [103.2110596, 30.94985962],
                [103.3909607, 30.98007202],
            ];
            let newArr = new Array(14).fill(0);
            let lb = newArr.map((v, i) => {
                return `${i + 1}號點位`;
            });
            window.posArr = [];
            window.onload = () => {
                new Vue({
                    el: "#app",
                    data() {
                        return {
                            showText: "暫無高程數據信息",
                            echartsData: [],
                            labelData: [],
                            tableShow: false,
                        };
                    },
                    mounted() {
                        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-tian-w-satellite",
                                infoBox: false,
                                selectionIndicator: false,
                                requestRenderMode: false,
                                // terrainId指定離線服務器上發布的高程服務的id
                                terrainId: "bigemap.dc-terrain",
                            });
                            if (
                                bmgl.FeatureDetection.supportsImageRenderingPixelated()
                            ) {
                                viewer.resolutionScale =
                                    window.devicePixelRatio;
                            }
                            //開啟抗鋸齒,讓圖像更加順滑
                            viewer.scene.postProcessStages.fxaa.enabled = true;
                            viewer.terrainProvider.readyPromise
                                .then(function (terrainProvider) {
                                    console.log("地形加載完成");
                                    // 在這里執行地形加載完成后的操作
                                    _this.loadLines();
                                })
                                .otherwise(function (error) {
                                    console.error("地形加載失敗", error);
                                });
                            // this.loadLines();
                        },
                        loadLines() {
                            let bl = viewer.entities.add({
                                polyline: {
                                    positions: bmgl.Cartesian3.fromDegreesArray(
                                        linesArr.flat()
                                    ),
                                    width: 4.0,
                                    material:
                                        bmgl.Color.fromCssColorString(
                                            "#009efc"
                                        ),
                                    clampToGround: true,
                                },
                            });

                            viewer.camera.flyTo({
                                destination: bmgl.Cartesian3.fromDegrees(
                                    102.84814348201657,
                                    31.097350000050334,
                                    11074.133580966802
                                ),
                                orientation: {
                                    heading: 0.22449683617942018,
                                    pitch: -0.3883918330117684,
                                    roll: 6.2678425339793336,
                                },
                                complete: () => {
                                    setTimeout(()=>{
                                        this.computedHeight();
                                    },1000)
                                },
                            });
                        },

                        computedHeight() {
                            linesArr.forEach((v, i) => {
                                let cartesian = bmgl.Cartographic.fromDegrees(
                                    v[0],
                                    v[1]
                                );
                                window.posArr.push(cartesian);
                            });
                            // console.log(posArr, "linesArr");
                            this.getNowheight(window.posArr, 0);
                        },
                        //根據提供的位置計算高度
                        getNowheight(posArr, count) {
                            let item = posArr.shift();
                            // console.log("count", count);
                            var _this = this;
                            if (item) {
                                let height = viewer.scene.globe.getHeight(item);
                                // console.log(`height`, height);
                                if (height < 0 || !height) {
                                } else {
                                    _this.echartsData.push({
                                        name: `${lb[count]}`,
                                        value: parseFloat(height.toFixed(2)),
                                    });
                                }
                                count += 1;
                                _this.getNowheight(window.posArr, count);
                            } else {
                                _this.createEaherts(
                                    _this.labelData,
                                    _this.echartsData
                                );
                            }
                        },
                        createEaherts(labelData, optionData) {
                            if(optionData.length == 0) return
                            let chartDom =
                                document.getElementById("echartsMap");
                            let myChart = echarts.init(chartDom);
                            let option;
                            option = {
                                title: {
                                    text: "點位對應高程值",
                                    textStyle: {
                                        color: "#fff",
                                        fontFamily: "楷體",
                                        fontStyle: "normal",
                                        fontWeight: "bold",
                                    },
                                    left: "center",
                                    top: "2px",
                                },
                                grid: {
                                    left: 15,
                                    right: 15,
                                    top: 44,
                                    bottom: 10,
                                    containLabel: true,
                                },
                                tooltip: {
                                    trigger: "item",
                                    formatter: (res) => {
                                        let index = res.dataIndex;
                                        let pos = linesArr[index];
                                        let val = res.data.value;
                                        // console.log("結果",index,pos,val);
                                        let string = `${index + 1}點位信息如下:<br>` +
                                            `經度:${pos[0]}<br>` +
                                            `緯度:${pos[1]}<br>` +
                                            `高度:${val}米`
                                        // console.log("結果",index,pos,val,string);    
                                        return string;
                                        ;
                                    },
                                },
                                xAxis: {
                                    type: "category",
                                    data: lb,
                                    axisLabel: {
                                        interval: 0,
                                        rotate: 40,
                                        color: "#ffffff",
                                        fontSize: 12,
                                    },
                                },
                                yAxis: {
                                    type: "value",
                                    name: "高程值",
                                    axisLabel: {
                                        color: "#ffffff",
                                        fontSize: 12,
                                    },
                                    nameTextStyle: {
                                        color: "#fff",
                                        fontFamily: "楷體",
                                        fontStyle: "normal",
                                        fontWeight: "bold",
                                    },
                                },
                                series: [
                                    {
                                        data: optionData,
                                        type: "bar",
                                        showBackground: true,
                                        backgroundStyle: {
                                            color: "rgba(180, 180, 180, 0.2)",
                                        },
                                        label: {
                                            color: "white",
                                            fontSize: 12,
                                        },
                                        itemStyle: {
                                            color: new echarts.graphic.LinearGradient(
                                                0,
                                                0,
                                                0,
                                                1,
                                                [
                                                    {
                                                        offset: 0,
                                                        color: "#83bff6",
                                                    },
                                                    {
                                                        offset: 0.5,
                                                        color: "#188df0",
                                                    },
                                                    {
                                                        offset: 1,
                                                        color: "#188df0",
                                                    },
                                                ]
                                            ),
                                        },
                                        emphasis: {
                                            itemStyle: {
                                                color: new echarts.graphic.LinearGradient(
                                                    0,
                                                    0,
                                                    0,
                                                    1,
                                                    [
                                                        {
                                                            offset: 0,
                                                            color: "#2378f7",
                                                        },
                                                        {
                                                            offset: 0.7,
                                                            color: "#2378f7",
                                                        },
                                                        {
                                                            offset: 1,
                                                            color: "#83bff6",
                                                        },
                                                    ]
                                                ),
                                            },
                                        },
                                    },
                                    {
                                        data: optionData,
                                        type: "line",
                                        itemStyle: {
                                            color: new echarts.graphic.LinearGradient(
                                                0,
                                                0,
                                                0,
                                                1,
                                                [
                                                    {
                                                        offset: 0,
                                                        color: "#83bff6",
                                                    },
                                                    {
                                                        offset: 0.5,
                                                        color: "#188df0",
                                                    },
                                                    {
                                                        offset: 1,
                                                        color: "#188df0",
                                                    },
                                                ]
                                            ),
                                        },
                                    },
                                ],
                                legend: {},
                            };
                            option && myChart.setOption(option);
                        },
                    },
                    beforeDestroy() {
                        viewer.destroy();
                        viewer = null;
                    },
                });
            };
        </script>
    </body>
</html>
        
国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久
<code id="kseui"><acronym id="kseui"></acronym></code>
  • <abbr id="kseui"><tbody id="kseui"></tbody></abbr>
  • <button id="kseui"></button>
  • 激情婷婷亚洲| 99热这里只有成人精品国产| 久久免费99精品久久久久久| 国产伦精品一区二区三区照片91 | av日韩中文字幕| 精品国产一区二区三| 日韩不卡av| 亚洲激情黄色| 91原创国产| 亚洲精品永久www嫩草| 在线播放亚洲| 精品国产一区二区三区日日嗨| 亚洲免费视频一区| 国产亚洲毛片在线| 久久精品aaaaaa毛片| 午夜欧美视频| 国产精品三区四区| 国内久久精品| 精品无人乱码一区二区三区的优势| 欧美在线日韩| 高清视频在线观看一区| 欧美一区二区三区免费看| 亚洲免费影院| 欧美日韩hd| 精品国产免费人成电影在线观...| 欧美日韩一卡| 久久久久久艹| 亚洲男人影院| 中文字幕一区二区三区在线乱码 | 99re热精品| 欧美日本中文| 久精品国产欧美| 99国产精品久久久久久久成人热| 欧美成人dvd在线视频| 国产精品久久久久久久久久直播| 神马影院一区二区| 99在线首页视频| 亚洲欧洲日本一区二区三区| 欧美黑人3p| 男人的天堂亚洲| 狠狠色狠狠色综合人人| 噜噜噜噜噜久久久久久91| 一本久道久久久| 欧美在线播放一区二区| 久久久久高清| 老司机精品导航| 亚洲理伦在线| 欧美日韩免费观看一区| 日韩精品一线二线三线| 国产精品一区二区不卡视频| 鲁大师影院一区二区三区| 精品av久久久久电影| 亚洲资源在线网| 日韩一本精品| 欧美黑人3p| 精品国产一区二区三区麻豆小说 | 亚洲日本精品国产第一区| 欧美91视频| 亚洲欧美久久久久一区二区三区| 免费观看国产成人| 久久精品一二三区| 国产精品日韩欧美一区二区三区| 久久人人97超碰人人澡爱香蕉| 99热免费精品在线观看| 激情综合自拍| 一区久久精品| 影音先锋日韩资源| 欧美日韩影院| 激情文学一区| 亚洲高清视频一区| 亚洲欧洲日本国产| 一本色道久久综合| 亚洲主播在线| 久久午夜视频| 国产精品一区二区av| 久久久久久久免费| 欧美一区观看| 伊人情人网综合| 欧美日韩综合网| 99精品视频网| 99re在线视频上| 国产精品一区二区三区免费| 精品日产一区2区三区黄免费| 蜜桃久久精品乱码一区二区 | 最新亚洲一区| 一区二区高清视频| 久久综合福利| 免费看国产精品一二区视频| 亚洲欧洲精品在线观看| 欧美视频官网| 欧美专区18| 国产精品午夜av在线| 精品国产二区在线| 亚洲日本欧美在线| 91久久在线| 国产精品一区二区三区四区五区| 欧美影视一区二区| 黄色国产精品| 91久久极品少妇xxxxⅹ软件| 欧美日韩成人一区二区三区| 欧美激情综合色综合啪啪| 先锋影音国产一区| 欧美不卡三区| 欧美私人啪啪vps| 久久天堂国产精品| 日韩精品一区二区三区外面| 极品日韩av| 狠狠爱一区二区三区| 中文字幕成人一区| 国产精品三上| 日本一区精品| 国产欧美日韩综合一区在线观看| 国产欧美一区二区在线播放| 欧美日韩福利| 国产一区喷水| 国内精品亚洲| 久久免费看av| 亚洲一区3d动漫同人无遮挡| 欧美高清视频一区| 国产视频在线观看一区| 欧美在线播放一区| 国产精品日本| 一本久久a久久精品vr综合| 免费看亚洲片| 午夜欧美精品久久久久久久| 久热精品在线| 亚洲天堂久久| 日韩精彩视频| 国产66精品久久久久999小说| 欧美日韩综合| 欧美日韩喷水| 99国产高清| 亚洲国产1区| 午夜精品一区二区在线观看的| 免费日韩av片| 在线免费高清一区二区三区| 久久久久久久久久久久久久久久av| 99国产精品私拍| 欧美凹凸一区二区三区视频| 激情小说网站亚洲综合网 | 亚洲欧美日韩精品综合在线观看| 久久美女性网| 亚洲人成免费| 欧美日韩 国产精品| 久久亚洲免费| 99视频在线| 久久久久一区| 中文在线一区| 日韩视频一区| 欧美激情无毛| 一区高清视频| 亚洲视频精品一区| 色噜噜一区二区| 精品无人区一区二区三区| 91情侣在线视频| 久久一综合视频| 午夜在线a亚洲v天堂网2018| 亚洲理伦在线| 亚洲美女一区| 日韩午夜高潮| 国产精品亚洲综合| 国产一区二区三区久久久久久久久| 激情视频一区二区三区| 欧美日韩一区二区三区在线视频 | 国产日本精品| 亚洲另类视频| 一级成人国产| 99热这里只有成人精品国产| 激情久久综合| 亚洲人久久久| 中文精品在线| 久久av一区| 91久久大香伊蕉在人线| 97人摸人人澡人人人超一碰| 99re国产视频| 久久婷婷开心| 亚洲国产欧洲综合997久久| 伊人久久大香线蕉午夜av| 一区二区三区四区不卡| 国产精品啊啊啊| 夜夜爽99久久国产综合精品女不卡| 日韩一级大片| 91久久爱成人| 蜜桃欧美视频| 亚洲春色在线| 激情久久中文字幕| 亚洲欧美成人综合| 国产精品乱子乱xxxx| 欧美一区二区综合| 欧美日本韩国在线| 亚洲欧美日产图| 久久精品国产理论片免费| 亚洲视频sss| 国产亚洲永久域名| 国产亚洲欧美一区二区| 色涩成人影视在线播放| 91久久国产自产拍夜夜嗨| 99在线观看视频| 一区二区三区av在线| 日韩一级免费|