zoukankan      html  css  js  c++  java
  • 使用ol进行底图的切换

    使用openLayer进行天地图的显示,以及底图的切换

    <template>
        <div>
        <div id="mapDiv" class="mapDiv">
        </div>
        <button @click="change_img">切换影像底图</button>
        <button @click="change_vec">切换街道底图</button>
        <button @click="change_ter">切换地形底图</button>
      </div>
    
    </template>
    <script>
    
    import MapInit from '../components/tianditu/Mapinit.js';
    import Map from 'ol/Map'
      import View from 'ol/View'
      import TileLayer from 'ol/layer/Tile'
      import OSM from 'ol/source/OSM'
      import XYZ from 'ol/source/XYZ'
      import {fromLonLat} from 'ol/proj.js';
    
    export default ({
        data(){
             return {
            map: null,
            map_img:null,
            map_vec:null,
            map_ter:null,
          }
        },
        methods:{
          
        change_img (){
            var img = new TileLayer({
              source: new XYZ({
                url:  'http://t3.tianditu.com/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=你的密钥'
              })
            });
            this.map.addLayer(img)
          },
          change_vec(){
            var map_cva= new TileLayer({
              source: new XYZ({
                url: "http://t3.tianditu.com/DataServer?T=cva_w&x={x}&y={y}&l={z}&tk=你的密钥"
              })
            });
            var map_vec =new TileLayer({
              source: new XYZ({
                url: "http://t4.tianditu.com/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=你的密钥"
              })
            });
    
            this.map.addLayer(map_vec);
            this.map.addLayer(map_cva);
            //console.log(this.map.getLayers());
          },
          change_ter(){
            var map_ter =new TileLayer({
              source: new XYZ({
                url: "http://t4.tianditu.com/DataServer?T=ter_w&x={x}&y={y}&l={z}&tk=你的密钥"
              })
            });
            var map_cta =new TileLayer({
              source: new XYZ({
                url:  "http://t4.tianditu.com/DataServer?T=cva_w&x={x}&y={y}&l={z}&tk=你的密钥"
              })
            });
            this.map.addLayer(map_ter);
            this.map.addLayer(map_cta);
          }
        
    
        
        },
        mounted() {
            
          var view =new View({
            center: fromLonLat([-0.1275, 51.507222]),
            zoom: 6
          })
           var img = new TileLayer({
              source: new XYZ({
                url:  'http://t3.tianditu.com/DataServer?T=img_w&x={x}&y={y}&l={z}&tk=你的密钥'
              })
            });
            
          this.map = new Map({
            target: 'mapDiv',
            layers: [          
             img
            ],
            view: view
          })
           
        }
    
    
    })
    </script>
    
    <style scoped>
     #mapDiv {
      100%;
    height:800px;
    }
    
    </style>
  • 相关阅读:
    android 中webview的屏幕适配问题
    Mongo Delete-19
    Android开发初体验
    Mybatis: 插件及分页
    紧急寻人:十三岁男孩昨日出走至今未回,大家帮忙扩散寻找!
    iOS 9,为前端世界都带来了些什么?「译」
    修改 Cucumber HTML 报告
    Android多模块混淆的问题
    吴裕雄--天生自然 诗经:村居
    吴裕雄--天生自然 诗经:太虚幻境
  • 原文地址:https://www.cnblogs.com/1gaoyu/p/15241789.html
Copyright © 2011-2022 走看看