WebGIS中地图放大缩短的安插和落到实处

文章版权由小编李晓晖和新浪共有,若转发请于鲜明处标明出处:http://www.cnblogs.com/naaoveGIS/

1.背景

在上一章中,我们提交了一切工具栏设计的骨干,使用命令方式,并规划了具体工具类所继承的基类——Command类。从这一章初叶大家便正式进入了实际工具类的宏图和兑现。

拓宽和收缩工具是最基础的工具之一,其操作分为三种:

a.点击地图,进行推广裁减

b.拉框,举办放大收缩

c.滚轮调控放大缩短

针对那两种操作办法,大家开展了差其余代码逻辑设计。

2.分析

a.滚轮调控地图放大缩短是一个固定的操作,固然切换来别的操作上时,此操作也应该相同生效。所以,将此成效应该放入到基类Command类中。

b.点击地图时,应该根据工具选拔,举办以点击点为要旨,将地图放大一个级别或者收缩一个级别。

c.拉框举办地图放大时,依照拉框的大小进行对应的地图级其他放手和缩短。

88bifa必发娱乐,而是,那里提到到一个题材,地图的级别是一直的,若是仅仅的将四角坐标变成拉框大小,则此时很可能并从未对应此四角坐标的级别。同时,四角坐标不必然肯定要统筹成拉框的实在大小,有无数序列,其真实性的四角坐标是拉框大小再乘以一个定点参数而得,比如1.5倍。

d.拉框进行地图缩时辰,有二种思路去落实。一种相对复杂,一种相对简便易行。同样在底下大家会切实解释。

3.地图放大和压缩的法则

要询问滴入放大和压缩的原理,大家必须对栅格地图中瓦片的获取以及拼接展现有宗旨的敞亮,我们可以回放本身在此种类中的第二章到第六章。

此地,我对推广和紧缩的为主原理做大概的任课。

3.1流程图

以下是全部操作完成的流程图:

 88bifa必发娱乐 1

                       

3.2现实表达

操作分为拉框和点击,根据两种操作可以拿走二种参数。针对拉框得到的参数只包含屏幕的地理四角坐标,针对点击获得的参数则囊括了屏幕的地理四角坐标以及要呈现的级其余。

根据参数的不等,瓦片的呼吁同样也分为三种请求格局。

本着只有屏幕地理四角坐标的参数,瓦片请求时,会率先算出与此屏幕四角坐标最和气的地图级别是稍微,然后从新算出此时的显示器地理四角坐标以及有关的瓦片的真正范围。

针对屏幕地理四角坐标和展现级别都有的参数,瓦片请求时,会从新算出在此显示级别下,显示屏的地理四角坐标应该是有些,焦点点是参数中屏幕四角坐标的中坚点。

4.放大作用的设计

在地点我们关系了加大功用设计的二种格局,点击和拉框。

a.点击操作时,以点击点为基本点,给出一个依据此中央点的限量(可以默许加减一个参数即可),然后拿走此时的地形图级别,假使地图不是细微级别(0),则将此Level减1,便是要求出示的地图级别(注:那里级别越小,比例尺越小,即松开)。

b.拉框操作时,用拉框范围,或者该限制乘以的基数为呼吁参数中的显示器地理四角坐标,请求瓦片。

5.收缩功用的安插

a.点击操作时,与推广操作没有本质不同,只是须求将获取的此时地图级别加1即可。

b.拉框操作时,如上边提到过的标题。那里有二种格局来缓解,一种相对难有的,一种相持简便易行一些。难一些的,需求我们第一得出此时的拉框范围与此时屏幕范围的比值recPercent,然后有三种处理格局:一般的是用此时屏幕范围除以recPercent获得须要的屏幕地理范围;复杂的是用此recPercent做连锁的变化然后乘以显示器地理范围。二种方法本质是一律的。简单的艺术,就是把收缩成效的拉框操作设计的与点击时的操作一样即可。

6.优化工作

在拉框时,可以将拉框的矩形画出,会使效益美化很多。那里只必要监听三种mouse事件,做出相关逻辑控制即可兑现。

7.深远讨论

在大家再次申请了地图瓦片,改变了显示器地理四角坐标后,其实是举行了一各处图的基础代谢的效用。那里,大家须要在成就地图放大和缩短后,抛出一个地图的Zoom事件,那样地图上的矢量图层监听到该事件后,才能做出相关的重绘操作。否则矢量图层将与当前的栅格图层出现叠加错误。

8.总结

在这一章我们上课了地图放大和裁减成效的布署和促成,在下一章节中我们初叶切磋地图的运动效用的规划和兑现。平移作用涉及到自己在前方章节中涉嫌过的一个标题,即矢量图层中要素的偏移难点。大家也会专程花一个章节来教学坐标的晃动难题。此难题的化解原理与事先涉嫌的显示屏坐标和地理坐标转换原理相结合后,可以很好的解决矢量图层中要素图层的显示难题。欢迎我们频频关怀。

                                                                 
—–欢迎转发,但保留版权,请于显著处标明出处:http://www.cnblogs.com/naaoveGIS/

                                                                          
即使您觉得本文确实援助了您,可以微信扫一扫,举办小额的打赏和鞭策,谢谢
^_^

                                    88bifa必发娱乐 2

相关文章