開源免費瓦片地圖下載器MapDownload


Required Node.JS >= v16.13
Required npm >= v8.1

map-download

項目地址:https://github.com/Hxy1992/MapDownload
軟件下載地址:https://github.com/Hxy1992/MapDownload/releases
基於electron和maptalks實現高德地圖、百度地圖(包括百度自定義地圖)、騰訊地圖、OpenStreetMap、CartoDb、ArcGIS在線地圖、天地圖(需Key)、MapBox(需Key)的下載

Build Setup

# 安裝依賴(依賴較大,使用國內鏡像)
npm install

# 熱更新服務
npm run watch

# 構建web
npm run build

# 構建應用
npm run compile


下載瓦片加載方式

Cesium

// 非百度地圖
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

// 非百度地圖
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

// 非百度地圖
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'
  })
});

注:軟件僅作為學習交流使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM