在本文中,我们将深入探讨如何使用Mapbox GL JS库加载天地图CGCS2000瓦片地图服务。Mapbox GL JS是一个强大的JavaScript库,它允许开发者创建交互式的、矢量渲染的地图。天地图是中国官方的地理信息服务,提供多种投影方式,其中CGCS2000是中国大地2000坐标系,适用于国内的地理信息展示。 我们需要理解Mapbox GL JS的基本工作原理。这个库基于WebGL,能够动态渲染地图,并支持自定义样式和图层。要加载外部地图服务,我们需要配置地图的源(source)和图层(layer)。在Mapbox GL JS中,我们可以使用`tileset`类型的源来加载瓦片地图服务。 关键步骤如下: 1. **引入资源**:确保在HTML文件(如`helloworld.html`)中引入`mapbox-gl.css`和`mapbox-gl.js`。这将加载Mapbox GL JS库和其默认样式。 ```html ``` 2. **初始化地图**:在JavaScript代码中创建一个地图实例,并设置容器ID、初始视图等参数。 ```javascript mapboxgl.accessToken = 'your_access_token'; // 获取Mapbox的访问令牌 var map = new mapboxgl.Map({ container: 'map', // 容器ID style: 'mapbox://styles/mapbox/streets-v11', // 默认样式,可替换为自定义样式 center: [120, 35], // 初始中心位置,经度、纬度 zoom: 5 // 初始缩放级别 }); ``` 3. **添加CGCS2000瓦片源**:由于Mapbox GL JS默认不支持CGCS2000坐标系,我们需要自定义源。通常,天地图CGCS2000瓦片服务的URL遵循`http://{s}.tianditu.gov.cn/tdt/cities_c/{z}/{x}/{y}.png`格式,其中`s`是服务器标识(0-3),`z`是缩放级别,`x`和`y`是瓦片坐标。 ```javascript map.addSource('tdt-cities', { type: 'raster', tiles: ['http://{s}.tianditu.gov.cn/tdt/cities_c/{z}/{x}/{y}.png'], tileSize: 256, minZoom: 0, maxZoom: 19, attribution: '天地图数据 © 天地图' }); ``` 4. **创建图层**:接下来,我们需要创建一个图层来显示这个源。注意,由于CGCS2000和WGS84坐标系之间的差异,可能需要转换坐标。这通常涉及到投影变换,可能需要额外的JavaScript库如proj4js。 ```javascript map.addLayer({ id: 'tdt-cities-layer', type: 'raster', source: 'tdt-cities' }); ``` 5. **应用自定义样式**:如果你有自定义样式(如`style0.json`),可以将其加载到地图中。这可以通过`map.loadStyle`方法实现。 ```javascript fetch('style0.json') .then(response => response.json()) .then(style => map.setStyle(style)); ``` 6. **交互与事件处理**:你可以添加事件监听器来响应用户的交互,例如点击、移动等,以便在地图上执行特定操作。 至此,我们已经成功地在Mapbox GL JS中加载了天地图CGCS2000瓦片服务。然而,实际应用中可能还需要处理更多细节,比如用户登录验证、投影转换、性能优化等。这需要对WebGIS、JavaScript编程以及Mapbox GL JS API有深入的理解。希望这个指南能帮助你开始这个过程。
2019-12-21 21:28:53 183KB Mapbox 2000坐标
1
程序与2018年12月更新,增加了CGCS2000坐标系。程序可以实现 WGS84 大地坐标 UTM投影坐标 北京54 大地坐标 高斯克吕格投影坐标 西安80 大地坐标 高斯克吕格投影坐标 CGCS2000大地坐标 高斯克吕格投影坐标之间的布尔沙七参数的计算以及坐标系统值的相互转换。布尔沙七参数计算采用最小二乘法平差,并提示平差结果。 软件较小,VC6.0编译,几百K,还包含测试的坐标数据。可用来测试程序用。
2019-12-21 20:23:55 395KB WGS84 北京54 西安80 CGCS2000
1
国家大地2000坐标的prj文件,包括地理和投影分带所有的CGCS2000坐标文件
2019-12-21 20:21:10 20KB CGCS2000 prj
1
国家大地2000坐标的prj文件,包括地理和投影分带所有的CGCS2000坐标文件
2019-12-21 20:20:00 25KB CGCS2000 prj
1
GPS坐标(WGS84)和中国大地坐标CGCS2000互转的JAVA程序,工程基于MAVEN,结果精确,可接受各种验证。
2019-12-21 19:41:20 4KB JAVA GPS WGS84 CGCS2000
1
1.CGCS2000下的大地坐标到CGCS2000下的空间直角坐标的转换; 2.CGCS2000下的空间直角坐标经过七参数转换,得到西安80下的空间直角坐标; 3.西安80下的空间直角坐标向西安80下的大地坐标转换; 4.西安80下的大地坐标进行高斯投影,得到平面坐标。 详情请参照:http://blog.csdn.net/dahongdahong/article/details/50563659 PS: 这个下载积分,我最开始设置是0分,不知道这个系统为什么改成了48分了,我也没法修改分数。 用户如果需要的话,可以直接在博客上留言或私信,留下邮箱,我会给发给你们的。 2019-09-16
2019-12-21 19:37:43 5KB 七参数 坐标转换
1