Leaflet 接入天地图服务

Leaflet 接入天地图服务

说明

接入天地图服务的步骤非常简单,不用担心注册申请 API Key 的步骤会很复杂,几分钟就能搞定,如果不需要显示路网、省市区域信息,将影像注记去除即可。

附上 Leaflet 官方文档地址:https://leafletjs.com/reference.html#tilelayer

源码

html 复制代码
<!DOCTYPE html>
<html lang="">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no"/>
    <link rel="stylesheet" href="./leaflet/leaflet.css"/>
    <script src="./leaflet/leaflet.js"></script>
    <title>leaflet</title>
    <style>
        html,
        body,
        #map {
            padding: 0;
            margin: 0;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }
    </style>
</head>
<body>
<div id="map"></div>
</body>
</html>
<script>
    var map = L.map('map', {
        center: [28.224276, 112.953187],
        zoom: 7
    });
    // 地形晕渲
    const terTileLayerUrl = "http://t0.tianditu.gov.cn/ter_w/wmts?" +
        "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=ter&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
        "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}" +
        "&tk=替换为APIKey";
    // 影像底图
    const imgTileLayerUrl = "http://t0.tianditu.gov.cn/img_w/wmts?" +
        "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
        "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}" +
        "&tk=替换为APIKey";
    // 影像注记 - 路网、省市区域名称
    const ciaTileLayerUrl = "http://t0.tianditu.gov.cn/cia_w/wmts?" +
        "SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles" +
        "&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}" +
        "&tk=替换为APIKey";
    // L.tileLayer(terTileLayerUrl).addTo(map);
    L.tileLayer(imgTileLayerUrl).addTo(map);
    L.tileLayer(ciaTileLayerUrl).addTo(map);
</script>

获取 API Key

  1. 注册天地图 https://uums.tianditu.gov.cn/register

  2. 进入开发页 http://lbs.tianditu.gov.cn 点击影像底图

  3. 点击申请 Key

  4. 创建新应用获取 Key

效果展示

影像底图 + 影像注记

相关推荐
工呈士1 小时前
HTML 模板技术与服务端渲染
前端·html
皮实的芒果1 小时前
前端实时通信方案对比:WebSocket vs SSE vs setInterval 轮询
前端·javascript·性能优化
AXUI1 小时前
至美!看AXUI如何美化原始HTML标签(reset/normalize)
css·html
il1 小时前
Deepdive into Tanstack Query - 2.0 Query Core 概览
前端·javascript
Shawn5901 小时前
前端时间管理实践:从时间标准化到工程化封装
前端·javascript
哟哟耶耶1 小时前
react-09React生命周期
前端·javascript·react.js
只可远观1 小时前
Flutter Dart 循环语句 for while do..while break、continue
开发语言·javascript·ecmascript
末日的狂欢姐1 小时前
至美!看AXUI如何美化原始HTML标签(reset/normalize)
css·html·reset·normalize
zwjapple2 小时前
React中createPortal 的详细用法
前端·javascript·react.js
小矮马2 小时前
React-组件通信
前端·javascript·react.js