PIE SDK图层渲染变化事件监听

1. 功能简介

通过PIE SDK加载图层后,会默认的赋值给数据一个渲染。当用户重新给数据赋值Render或改变数据显示效果时,会触发渲染变化事件。

所谓的事件监听是在事件触发时,将执行用户指定的函数或方法,已实现特定的功能。

2. 功能实现说明

2.1 实现思路及原理说明


第一步


栅格图层接口转换至ILayerEvents


第二步


OnRenderChanged进行事件绑定,以达到监听目的。

2.2  核心接口与方法


接口/类


方法


说明


Carto. ILayerEvents


OnRenderChanged


渲染变化事件

2.3 示例代码


项目路径


百度云盘地址下/PIE示例程序/07图层渲染/14.栅格渲染变化监听


数据路径


百度云盘地址下/PIE示例数据/栅格数据/ GF1/


视频路径


百百度云盘地址下/PIE视频教程/07图层渲染/14.栅格渲染变化监听.avi


示例代码


 1 方法(一)渲染变化事件监听
 2 if (mapControlMain.ActiveView.CurrentLayer == null)return;
 3 IRasterLayer pRasterLayer = mapControlMain.ActiveView.CurrentLayer as IRasterLayer;
 4     if (pRasterLayer != null)
 5     {
 6         //接口转换,添加监听事件
 7         ILayerEvents eventsListern = pRasterLayer as ILayerEvents;
 8         eventsListern.OnRenderChanged -= eventsListern_OnRenderChanged;
 9         eventsListern.OnRenderChanged += eventsListern_OnRenderChanged;
10     }
11 /// <summary>
12 /// 事件方法
13 /// </summary>
14 /// <param name="layer"></param>
15 void eventsListern_OnRenderChanged(ILayer layer)
16 {
17     MessageBox.Show(layer.Name + "渲染方式变化了!");
18 }
19
20 方法(二)修改渲染方式,触发事件
21    if (mapControlMain.ActiveView.CurrentLayer == null)return;
22     IRasterLayer pRasterLayer = mapControlMain.ActiveView.CurrentLayer as IRasterLayer;
23     if(pRasterLayer!=null)
24     {
25         IRasterRender rRender = pRasterLayer.Render;
26         IRasterStretch stretch = rRender as IRasterStretch;
27         stretch.StretchType = RasterStretchType.RasterStretch_PercentMinimumMaximum;
28         stretch.LinearStretchPercent = 2;
29         pRasterLayer.RaiseRenderChanged();
30         mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
31     }

2.4  示例截图

原文地址:https://www.cnblogs.com/PIESat/p/10168098.html

时间: 2024-10-31 00:29:07

PIE SDK图层渲染变化事件监听的相关文章

PIE-SDK For C++地图范围设置和图层事件监听

1.功能简介 地图范围设置的监听就是通过DisplayTransformationPtr对地图的视图范围更新或者地图的分辨率发生变化进行监听,然后做出相应的操作.图层事件的监听就是通过ActiveViewPtr对地图的添加,删除和移动图层操作进行监听,然后做出相应操作,例如鹰眼图,当监听主地图添加一个新图层数据时,鹰眼图就可以通过将新图层显示在鹰眼图中. 2.功能实现说明 2.1. 实现思路及原理说明 第一步 绑定地图视图事件,添加地图控制的监听事件 第二步 根据不同的事件进行不同的功能操作 2

WebView使用详解(二)——WebViewClient与常用事件监听

登录|注册     关闭 启舰 当乌龟有了梦想-- 目录视图 摘要视图 订阅 异步赠书:Kotlin领衔10本好书      免费直播:AI时代,机器学习如何入门?      程序员8月书讯      每周荐书:Java Web.Python极客编程(评论送书) WebView使用详解(二)--WebViewClient与常用事件监听 2016-05-28 11:24 20083人阅读 评论(13) 收藏 举报  分类: 5.andriod开发(148)  版权声明:本文为博主原创文章,未经博主

雷火神山直播超两亿,Web播放器事件监听是怎么实现的?

Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播.在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听. 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名称 介绍 play 已经开始播放,调用 play() 方法或者设置了 autuplay 为 true 且生效时触发

屏幕触摸事件监听,判断上下左右的操作行为,判断方法缩小的操作行为

在手机屏幕上能够实现的人机交互行为,大致包括点击按钮,拉动滑动块,物体缩放,上下左右拉动等. 手机屏幕触摸事件的监听方法: 1.首先要设置一块布局区域,frameLayout/LinearLayout等都可以,并为布局设置id: 2.在Activity中声明相应的布局类型,并通过findViewById()方法找到该布局,然后为该布局区域设置setOnTouchListener()方法,就能监听在相应屏幕触摸操作 实现屏幕触摸事件监听的代码: private LinearLayout Land;

UI事件监听的击穿

什么是UI事件监听的击穿 在游戏视图中,有两个UI界面叠在一起的时候,单击一个空白处,却触发了被覆盖在下层了UI界面中的单击事件,这就是单击击穿了上层界面. 假设场景中放置了一个箱子,单击箱子会触发一个开箱事件,如果单击一个UI,恰好UI在视觉上将箱子覆盖了,那么它也许就会触发箱子的单击事件. 如何避免和解决UI事件监听的击穿 第一种方法:用一层BoxCollider覆盖,进行遮挡. 在界面底板上Attach一个BoxCollider. 第二种方法:使用EventMask Unity的Camer

【COCOS CREATOR 系列教程之二】脚本开发篇&事件监听、常用函数等示例整合

[Cocos Creator ](千人群):  432818031 上一篇,介绍了Himi在使用过cc所有组件后的一篇总结,没有具体介绍每个组件的原因在于官方文档很齐全,而且也有视频的介绍. 所以希望童鞋们可以把我这两篇博文当成对组件.脚本两部分开发的整理与总结. 后续的文章,Himi应该主要更新一些官方还未补充或者还没有的教程.避免无用功. 下面直接放出代码,因为不是很难理解.所以不再一一赘述,都是常用的函数.事件监听.动作回调.定时器等开发过程中必接触的. 大致内容如下: cc 属性介绍 获

让 select 的 option 标签支持事件监听(如复制操作)

这标题,让option支持事件监听,应该不难的呀,有什么好讲的? 其实还是有的,默认在浏览器代码是无法直接对option标签进行操作的,不仅包括JS事件监听,还是CSS样式设置 查了一些资料,姑且认为它是系统OS级别处理的 想自定义option的样式,很多人会建议用 <ul> <li> 标签来辅助同步操作与值 想对option进行事件监听,有一个tip:当给select显示设置了size 属性且值 大于1 时,才能监听 近来产品也提了个鼠标操作复制option值的需求,就利用这个s

IEngineEditor与IWorkspaceEdit,以及相关的事件监听

转自原文 IEngineEditor与IWorkspaceEdit,以及相关的事件监听 IEngineEditor适用于直接在图层上的编辑,例如使用"要素编辑"工具菜单上的"开始编辑"等工具进行编辑,相应的事件使用IWorkspaceEdit监听,例如以下的代码: private IEngineEditor m_EngineEditor = new EngineEditorClass(); private IEngineEditEvents_Event m_Engi

Android截屏事件监听

转载注明出处:http://blog.csdn.net/xiaohanluo/article/details/53737655 1. 前言 Android系统没有直接对截屏事件监听的接口,也没有广播,只能自己动手来丰衣足食,一般有三种方法. 利用FileObserver监听某个目录中资源变化情况 利用ContentObserver监听全部资源的变化 监听截屏快捷按键 由于厂商自定义Android系统的多样性,再加上快捷键的不同以及第三方应用,监听截屏快捷键这事基本不靠谱,可以直接忽略. 本文使用