# MapDownload **Repository Path**: lt133/MapDownload ## Basic Information - **Project Name**: MapDownload - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-02-14 - **Last Updated**: 2022-03-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [![Required Node.JS >= v16.13](https://img.shields.io/static/v1?label=node&message=%3E=16.13&logo=node.js&color)](https://nodejs.org/about/releases/) [![Required npm >= v8.1](https://img.shields.io/static/v1?label=npm&message=%3E=8.1&logo=npm&color)](https://github.com/npm/cli/releases) # map-download > 基于electron和maptalks实现高德地图、百度地图(包括百度自定义地图)、腾讯地图、OpenStreetMap、CartoDb、ArcGIS在线地图、天地图、MapBox的下载 ## Build Setup ``` bash # 安装依赖(依赖较大,使用国内镜像) npm install # 热更新服务 npm run watch # 构建web npm run build # 构建应用 npm run compile ``` --- ## 下载瓦片加载方式 ### Cesium ```javascript // 非百度地图 viewer.imageryLayers.addImageryProvider(new Cesium.UrlTemplateImageryProvider({ url: 'http://localhost:7099/{z}/{x}/{y}.png' })) // 百度地图(需自定义BaiduImageryProvider),可参考cesium-helper目录下代码 import BaiduImageryProvider from './cesium-helper/BaiduImageryProvider/BaiduImageryProvider.js' viewer.imageryLayers.addImageryProvider(new BaiduImageryProvider({ url: 'http://localhost:7099/{z}/{x}/{y}.png' })) ``` ### openlayers ```javascript // 非百度地图 const baseMap = new ol.layer.Tile({ source: new ol.source.XYZ({ url: 'http://localhost:7099/{z}/{x}/{y}.png', projection: 'EPSG:3857', }), }); const map = new ol.Map({ layers: [baseMap], target: 'map', view: new ol.View({ center: ol.proj.transform([105.08052356963802, 36.04231948670001], 'EPSG:4326', 'EPSG:3857'), zoom: 5, }), }); ``` ### maptalks ```javascript // 非百度地图 var map = new maptalks.Map('map', { center: [105.08052356963802, 36.04231948670001], zoom: 5, minZoom:1, maxZoom:19, baseLayer: new maptalks.TileLayer('base', { 'urlTemplate' : 'http://localhost:7099/{z}/{x}/{y}.png' }) }); //百度地图 var map = new maptalks.Map('map', { center: [105.08052356963802, 36.04231948670001], zoom: 5, minZoom:1, maxZoom:19, spatialReference:{ projection : 'baidu', }, baseLayer: new maptalks.TileLayer('base', { 'urlTemplate' : 'http://localhost:7099/{z}/{x}/{y}.png' }) }); ``` # TODO + 多个图层叠加下载问题 + 行政区划范围下载和瓦片裁切 + 自定义图层加载、下载,支持上传geojson作为下载范围