openlayers presenta el mapa de Tiandi y carga las capas que se han publicado en geoserver en el mapa de Tiandi

Preparación

Lo primero que debes preparar:

  1. Para capas o grupos de capas publicados en GeoServer,
    consulte https://blog.csdn.net/weixin_45390094/article/details/112816608
    para que varias capas se unan a un grupo de capas para una publicación unificada, consulte https://blog. csdn.net/weixin_45390094/article/details/112969992
  2. Tianditu: si desea utilizar la interfaz en línea de Tianditu, debe registrar una cuenta en el sitio web oficial de Tianditu https://www.tianditu.gov.cn/ y obtener una clave. Para conocer el método, consulte —> Tianditu adquisición clave

El código de implementación es el siguiente:

<!-- 天地图and geoserver的服务 -->

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <link rel="stylesheet" href="../v6.12.0/css/ol.css" /> //这里根据自己项目里openlayers的位置来写
    <script src="../v6.12.0/build/ol.js"></script>
    <style>
        .map {
     
     
            height: 980px;
            width: 100%;
        }
    </style>
</head>

<body>
    <div id="map" class="map"></div>
    <script type="text/javascript">
        var map = new ol.Map({
     
     
            target: 'map',            
            layers: [
                new ol.layer.Tile({
     
     
                    source: new ol.source.XYZ({
     
     
                        url: 'https://t0.tianditu.gov.cn/DataServer?T=vec_w&x={x}&y={y}&l={z}&tk=你的密钥',
                    }),
                    /*isGroup: true,
                    name: '天地图路网'*/
                }),

                new ol.layer.Tile({
     
     
                    source: new ol.source.XYZ({
     
     
                        url: 'https://t0.tianditu.gov.cn/DataServer?T=cia_w&x={x}&y={y}&l={z}&tk=你的密钥'
                    }),
                    /*isGroup: true,
                    name: '天地图文字标注'*/
                }),
				//天地图有多个图层,根据需要加载

                new ol.layer.Tile({
     
     
                    // 图层组
                    source: new ol.source.TileWMS({
     
     
                        url: 'http://localhost:8080/geoserver/qianying/wms', //  这个地址是在geoserver里面进行图层预览的地址是一致
                        params: {
     
     
                            'LAYERS': 'qianying:qianyingmap', // 这里的名字需要与空间定义的一样
                            'TILED': true
                        },
                        serverType: 'geoserver',
                        transition: 0
                    })
                })
            ],
            view: new ol.View({
     
     
                center: [111,30], //这里我设置的效果不太对,根据情况修改
                zoom: 5,
            }),
        })

    </script>
</body>

</html>

Supongo que te gusta

Origin blog.csdn.net/m0_46538057/article/details/123640287
Recomendado
Clasificación