[发明专利]基于Sharpmap的通过鼠标滚轮控制地图缩放方法有效

专利信息
申请号: 201410072331.6 申请日: 2014-02-28
公开(公告)号: CN103824255B 公开(公告)日: 2017-02-22
发明(设计)人: 张万顺;王永桂;彭虹 申请(专利权)人: 武汉大学
主分类号: G06T3/40 分类号: G06T3/40;G06F9/44
代理公司: 武汉科皓知识产权代理事务所(特殊普通合伙)42222 代理人: 鲁力
地址: 430072 湖*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 sharpmap 通过 鼠标 滚轮 控制 地图 缩放 方法
【权利要求书】:

1.一种基于Sharpmap的通过鼠标滚轮控制地图缩放方法,其特征在于,基于下述两个预备步骤:

预备步骤1:给定基于Sharpmap的变量,分别是:

变量1:缩放前地图所在的视野范围M,定义M在SharpMap中为SharpMap地图控件MapView的Envelope;

变量2:定义M的左下角顶点坐标O(xo,yo)与右上角顶点T(xt,yt);

变量3:定义缩放时鼠标光标所在地图的位置为H(xh,yh);

变量4:定义H距M上下左右边界的绝对距离dx1,dx2,dy1,dy2

变量5:定义缩放后的视野范围W及其左下角和右上角顶点A(xa,ya)和D(xd,yd);

预备步骤2,基于上述变量,构建缩放模型,具体方法是:根据缩放前后所涉及的地图变量,得到视野范围的上下左右坐标点(xa,ya,xd,yd);所述(xa,ya,xd,yd)基于以下公式:

通过上式得到的xa,ya,xd,yd坐标值,代入BoundingBox,即可构建缩放后的视野区域W,即:

BoundingBox W=BoundingBox(xa,ya,xd,yd);

基于上述两个预备步骤,基于Sharpmap的通过鼠标滚轮控制地图缩放方法具体步骤如下:

步骤1,调用Sharpmap库函数加载地图,构建Mapview视图区,并引用地图加载函数Mapview.addlayer在视图区加载地图,确定地图的最大边界视野范围Envelope,即视野范围M;

步骤2,构建鼠标滚轮事件并获取当前鼠标光标所在的屏幕位置坐标,该过程传入的鼠标事件参数e,确定鼠标滚轮向前滚动时为放大,向后滚动时为缩小;然后调用Sharpmap坐标转换函数将屏幕坐标转换为Sharpmap地图的地理坐标,传入当前鼠标位置的屏幕坐标,并获得当前鼠标位置的地理坐标H(xh,yh);

步骤3,依据控制点到缩放前后视野范围上下左右距离之间比例不变的原理,构建地图缩放算法模型wheelZoom;

步骤4,确定每次鼠标滚动的缩放幅度并代入滚轮缩放算法公式,求得缩放后地图新的视野范围,具体是将H(xh,yh),O(xo,yo),T(xt,yt),缩小幅度extent和判断鼠标滚轮滚动方向参数e.Delta传入wheelZoom函数,求得缩放后的视野范围W的左下角顶点坐标A(xa,ya)和右上角顶点坐标D(xd,yd);

步骤5,调用Sharpmap库函数将地图缩放至新的视野范围W中,完成地图缩放。

2.根据权利要求1所述的基于Sharpmap的通过鼠标滚轮控制地图缩放方法,其特征在于,所述步骤3的具体方法是:

步骤3.1,根据调用SharpMap的库函数获取的最外边界视野M,通过M的上下左右属性计算出M的控制左下角顶点O(xo,yo)与右上角顶点T(xt,yt)以及M的宽度Lw,并确定缩小幅度为extent=Lw/n,n>0以及H到M边界的距离;

步骤3.2,构建自定义缩放算法模型wheelZoom;该模型即预备步骤2所述模型,函数的系数依次是当前鼠标位置点的x,y值,缩放前视野M的左、下、右、上边界值,缩放的幅度和缩小与放大的判断变量。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉大学,未经武汉大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201410072331.6/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top