国产久_亚欧精品一区_久久亚洲美女_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>
  • 久久国产精品一区二区三区四区 | 伊人久久大香线蕉综合75| 国产欧美日韩亚洲| 欧美激情无毛| 色999五月色| 久久久av水蜜桃| 成人动漫视频在线观看免费| 中国女人久久久| 在线日韩av| 欧美日韩理论| 欧美日本一区| 欧美精品三级| 欧美国产综合视频| 午夜天堂精品久久久久| 一区二区高清视频| 欧美一区二区三区在线播放| 视频一区视频二区视频三区高| 欧美高清视频一区| 久久久福利视频| 久久国产欧美精品| 欧美一级二级三级| 欧洲一区二区日韩在线视频观看免费| 激情久久av| 免费h精品视频在线播放| 国产在线一区二| 久久精品五月婷婷| 午夜精品一区二区三区四区| 日本午夜精品一区二区| 亚洲欧美日韩精品久久久| 少妇免费毛片久久久久久久久| 四虎一区二区| 欧美高清日韩| 影音先锋日韩资源| 久久国产精品99国产| 美女久久一区| 久久精品国产精品青草色艺| 日本中文不卡| 欧美区高清在线| 99国产一区| 成人免费视频网站| 久久亚裔精品欧美| 欧美福利在线| 99视频精品免费观看| 99久久无色码| 三区精品视频| 激情久久五月| 91丨九色丨国产| 欧美日韩电影一区二区三区| 欧美精品一级| 99精品免费| 久久精品国产精品青草色艺| 伊人久久av导航| 午夜综合激情| 日韩视频专区| 一本色道精品久久一区二区三区 | 国产精品 日韩| 四虎一区二区| 亚洲综合社区| 日韩av不卡播放| 中文亚洲免费| 日本高清久久一区二区三区| 欧美三级在线| 国产精品久久九九| 欧美亚韩一区| 国产伦精品一区二区三区视频孕妇| 色狠狠久久av五月综合|| 亚洲精品美女| 日本一区二区三区免费观看| 日韩天堂av| 日本在线观看不卡| 校园激情久久| 中文字幕久久一区| 96成人在线视频| 午夜精品免费| 精品一区二区三区免费毛片| 亚洲精品专区| 日本在线成人一区二区| 亚洲欧美日产图| 在线观看成人av| 国产伦理一区二区三区| 亚洲国产精品一区在线观看不卡| 久久久久久一区| 久久久国产精品一区二区中文| 欧美在线视频二区| 九色91在线视频| 久久另类ts人妖一区二区| 亚洲一区二区精品在线| av一本久道久久波多野结衣| 亚洲国产高清一区二区三区| 三区精品视频观看| 国产日产精品一区二区三区四区| 一区二区视频欧美| 亚洲一区三区| 欧美日韩精品久久| 久久精品女人的天堂av| 91久久久一线二线三线品牌| 青青草原亚洲| 久久久久久久久一区二区| 久久亚洲综合| 亚洲在线日韩| 一区二区国产精品| 影音先锋亚洲电影| 欧美一区综合| 亚洲一卡二卡三卡| 日韩精品久久久毛片一区二区| 国产区一区二区三区| 美女日韩在线中文字幕| 日韩午夜av| 国产亚洲欧美另类一区二区三区| 国模一区二区三区| 欧美日韩国产精品一区二区亚洲 | 亚洲国产另类久久久精品极度| 国产精品一区二区三区精品| 久久久久久久高潮| 久久国产日韩| 久久亚洲影院| 国产精品国产亚洲精品看不卡15| 91丨九色丨国产| 成人免费看片网址| 国产一区免费观看| 激情小说综合区| 欧美午夜精品理论片a级大开眼界 欧美午夜精品久久久久免费视 | 99精品欧美一区二区三区| 亚洲另类视频| 性8sex亚洲区入口| 99精彩视频在线观看免费| 91网免费观看| 久久99精品久久久久久三级| 精品免费国产| 日韩精品电影网站| 午夜日韩激情| 99riav1国产精品视频| 国产麻豆日韩| 国产日韩一区二区三区| 欧美连裤袜在线视频| 丝袜足脚交91精品| 黄色成人在线网址| 国产欧美精品久久| 国产99午夜精品一区二区三区| 精品久久sese| 国产 高清 精品 在线 a | 欧美日韩1区| 亚洲高清资源| 操一操视频一区| 日韩av图片| 国内一区二区三区| 亚洲欧美高清| 精品一卡二卡三卡四卡日本乱码| 午夜欧美性电影| 国产综合网站| 51成人做爰www免费看网站| 久久精品ww人人做人人爽| 亚洲一二三区精品| 国产欧美一级| 久久riav二区三区| 国产精品大片免费观看| 免费看的黄色欧美网站| 欧美日韩高清免费| 91久久精品www人人做人人爽| 3d动漫啪啪精品一区二区免费| 久久精品国产精品青草色艺| 欧美激情第二页| 97人人模人人爽人人少妇| 四虎影院一区二区三区 | 中文国产一区| 欧美一区国产一区| 一区二区三区视频在线播放| 精品无人区一区二区三区| 欧美一区二区三区在线播放| 91观看网站| 欧美另类一区| 精品国产乱码久久久久久88av| 黄色工厂这里只有精品| 精品一区二区久久久久久久网站| 好看不卡的中文字幕| 精品欧美一区二区精品久久| 国产一区二区三区四区三区四| 国产乱子伦精品| 尹人成人综合网| 欧美精品二区三区四区免费看视频 | 国产亚洲二区| aa成人免费视频| 亚洲日本精品| 极品尤物一区二区三区| 99精品99| 欧美1区2区视频| 久中文字幕一区| 久久精品道一区二区三区| 欧美日韩精品综合| 日韩国产在线一区| 国产精品免费观看高清| 国产日韩亚洲| 国产精品多人| 伊人久久大香线蕉午夜av| 精品欧美国产| 99国产高清| 亚洲欧美激情诱惑| 在线观看成人av| 欧美福利一区| 亚洲三区视频|