前端leaflet框选下载bing遥感图 |
您所在的位置:网站首页 › leaflet框选 › 前端leaflet框选下载bing遥感图 |
微软必应bing遥感图。 bing地图比百度遥感图清晰很多,19级,百度是18级,同样的18级,bing地图比百度也清晰很多。所以没有必要用百度地图了。不过bing地图仅用于学习,商用要付费。 参考了 https://xiaozhuanlan.com/topic/6209184573 https://learn.microsoft.com/en-us/bingmaps/articles/bing-maps-tile-system js知识 https://www.jb51.net/article/269653.htm https://runoops.com/jsref-log.html https://www.jb51.net/article/185441.htm golang拼图参考: 试验过程记录 一、首先是研究看微软bing地图的介绍,有4个重点要注意。 申请一个bing地图的key,正常的注册几乎行不通,老是循环机器人验证,用github登录就简单多了。它的原理是通过这样一个地址https://dev.virtualearth.net/REST/v1/Imagery/Metadata/{imagerySet}?key={bingMapsKey}&include=ImageryProviders&uriScheme=https&c={culture}来获得这样一个地址https://ecn.{subdomain}.tiles.virtualearth.net/tiles/a{quadkey}.jpeg?g=13239请看https://learn.microsoft.com/en-us/bingmaps/rest-services/imagery/get-imagery-metadata?source=recommendations,里面讲的很清楚。 获得了图片初步地址后,需要替换里面的{subdomain}和{quadkey},见上文python的代码(贴在下面了)# 例如:http://ecn.{subdomain}.tiles.virtualearth.net/tiles/a{quadkey}.jpeg?g=7786 tileUrlTemplate = data['resourceSets'][0]['resources'][0]['imageUrl'] # 对获取到的地址里的变量进行替换 url = tileUrlTemplate.replace("{subdomain}", imageDomains[0]) url = url.replace("{quadkey}", qk) # 请求网络,将获取到的图片存入文件 response = requests.get(url, stream=True) print(response) with open(tileFileName, 'wb') as out_file: shutil.copyfileobj(response.raw, out_file) # 左上为原点 tilePixelMax = quadkey.TileSystem.geo_to_pixel((lat_max, lon_max), tileZoom) tilePixelMin = quadkey.TileSystem.geo_to_pixel((lat_min, lon_min), tileZoom) print(tilePixelMax) print(tilePixelMin) # 2层循环进行下载 for x in range(tilePixelMin[0], tilePixelMax[0], 256): for y in range(tilePixelMax[1], tilePixelMin[1], 246): get_tiles_by_pixel((x, y))quadkey四键怎么算微软的bing介绍里有现成的C#代码,首先要将地图上的经纬度转成pixelxy(LatLongToPixelXY),再将结果转为tilexy(PixelXYToTileXY),再将结果tilexy转为quadkey(TileXYToQuadKey) 二、研究leaflet-bing-layer.js这个插件,借用里面的代码。 如果js比较熟悉,直接请求上面的地址获得图片地址,再替换图片地址里的变量,变成真实图片地址,再下载。 三、leaflet的geoman插件里的pm方法。直接从上面链接中把矩形绘制,获得矩形顶点的经纬度,填入代码,进行循环。 四、注意下载防止被封,所以需要设定随机停顿时间。 五、动画演示
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |