[发明专利]一种基于Canvas的在线地图保存方法有效
申请号: | 201811172048.5 | 申请日: | 2018-10-09 |
公开(公告)号: | CN109542987B | 公开(公告)日: | 2021-10-22 |
发明(设计)人: | 陈辉;蒉露超;范伟;李瑞昶;丁茜 | 申请(专利权)人: | 中国电子科技集团公司第二十八研究所 |
主分类号: | G06F16/29 | 分类号: | G06F16/29;G06F16/957 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 胡建华 |
地址: | 210000 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 canvas 在线 地图 保存 方法 | ||
本发明公开了一种基于Canvas的在线地图保存方法,主要针对当前简单的地图保存功能无法满足复杂的应用需求的问题。该方法主要技术路线是通过地图交互确定需要保存的地图区域,然后根据所确定的区域获取地理底图和地理要素,再利用Canvas的特点将获取的地理底图和地理要素根据指定的级别进行重绘并保存;该方法主要分为四个模块:瓦片获取模块、要素获取模块、Canvas渲染模块以及地图保存模块,其中瓦片获取模块负责根据所选范围生成瓦片请求,要素获取模块负责根据所选范围找出所需要素,Canvas渲染模块负责将瓦片以及要素进行渲染,地图保存模块负责将最终结果保存为图片。
技术领域
本发明属于地理信息系统领域,具体涉及一种基于Canvas的在线地图保存方法。
背景技术
随着互联网的快速发展和迅速普及,地理信息系统(GIS)在互联网上的应用也越来越多,由此衍生的需求也越来越多样化,而实现在线地图按指定级别将指定区域保存为图片就是其中之一。
用户想要在在线地图环境下保存特定区域范围的地图,同时因为保存的结果有某种特定的应用,需要在保存的同时控制保存的地图大小,且地图上显示的要素与当前保存的大小适配,这时传统的保存方法就无法实现这样的应用功能,例如当前选中的地图区域屏幕范围大小为256*256像素,但因为保存的结果需要打印在A1甚至更大的图幅上,需要将结果放大处理,如果只是简单将地图所选范围直接存为同样大小的图片然后在进行放大处理,则会造成最终得到的结果模糊不清,且地图显示的要素也与放大后的地图不适配,这时就需要通过其他的方法来实现该应用功能了。
当前有不少浏览器自带了截图功能,然而自带的截图功能仅能做到将所选区域的屏幕内容简单复制保存,这显然无法满足复杂的需求。因此研究一种可以实现在线地图按指定级别将指定区域保存为图片的方法就显得极为必要了。
发明内容
发明目的:针对目前的技术以及工具无法满足复杂的在线地图保存应用功能需要,本发明提出一种借助Canvas的特性从而实现在线地图按指定级别将指定区域保存为图片的应用功能的方法,其中Canvas是在HTML5(超文本标记语言)中标准化的一种标签,用于在网页中实时生成图像,并且可以操作图像内容。
技术方案:本发明提出了一种基于Canvas的在线地图保存方法,包括瓦片获取模块、要素获取模块、Canvas渲染模块以及地图保存模块;
所述瓦片获取模块用于获取瓦片渲染队列;
所述要素获取模块用于获取要素渲染队列;
所述Canvas渲染模块用于对瓦片渲染队列和要素渲染队列进行Canvas渲染,得到渲染好瓦片和要素的Canvas对象;
所述地图保存模块用于将Canvas对象转换为图片地址,并进行地图保存。
所述瓦片获取模块执行如下步骤:
步骤a1:在地图上选取好需要保存的区域和级别,设区域左下角坐标为[extent[0],extent[1]],右上角为[extent[2],extent[3]],级别为n;
步骤a2:计算地图在指定级别的像素分辨率,计算方法为:
设定第1级的像素分辨率r为resolution,则第n级的像素分辨率rN为resolution/(2^(n-1)),n=1;
步骤a3:根据区域和分辨率的大小,计算出所需瓦块的行列号,计算方法为:
设定每块瓦片的像素宽度为tileSize,地图的左上角即瓦片的行列号起算点坐标为[origin[0],origin[1]];
区域左上角距离地图左上角的像素跨度为xFromOrigin=(extent[0]-origin[0])/rN;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第二十八研究所,未经中国电子科技集团公司第二十八研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811172048.5/2.html,转载请声明来源钻瓜专利网。