卷帘

开发工具与关键技术:SuperMap/GIS MVC/C# SQL
作者:张文静
撰写时间:2019/2/29
声明变量和申明路径,通过方法init()遍历循环浏览器支不支持canvvas,如果不能,改设备不能运行该范例,声明一堆控件,使它们的图层相互叠加,然后初始化底图,见截图
在这里插入图片描述
初始化图层,在这个图层最上层,做卷帘图层,见截图
在这里插入图片描述
然后在初始化的addLayer的方法声明它的x轴和y轴,然后获取地图div的宽度,初始化卷帘的位置,以及初始化卷帘图层的显示范围,判断监听地图的拖动事件,见截图
在这里插入图片描述
视图层显示范围随着卷帘的拖动而变化,遍历循环如果在缩放后直接拖动卷帘div,卷帘图层显示范围右侧数值需要进行修正,然后在拖动卷帘的方法取消事件的默认行为,判断鼠标捕获,以及使卷帘在地图内,遍历循环如果使用非Canvas图层,在拖动地图后,再次拖动卷帘div,图层显示范围出错,这里修正图层显示范围右侧数值,拖动完成后,判断释放鼠标捕获,见截图
在这里插入图片描述
然后地图drag,pan或者zoom操作开始时执行该函数,此时记录卷帘图层显示范围偏移量,地图drag,pan或者zoom操作开始后执行该函数,此时计算卷帘图层显示范围偏移量,如果没有进行缩放,计算偏移量后,设置卷帘图层left,top,right,bottom显示数值,如果进行缩放,则left,top,bottom重置为默认值,right设置为当前卷帘div所在位置数值,设置非Canvas卷帘图层可见范围,见截图
在这里插入图片描述
然后将传入的数值取整,见截图
在这里插入图片描述
执行结果,见截图
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值