1. 功能简介

地图图层控制就是图层的相关操作,如地图图层数据的添加、删除、移动和拖拽等功能。

2. 功能实现说明

2.1. 实现思路及原理说明

第一步

图层添加是调用AddLayer方法将图层添加到地图中

第二步

图层删除是调用Delete方法将指定索引的图层删除

第三步

图层移动是调用MoveLayerTo方法将指定的图层移动到指定的索引位置

2.2 . 核心接口与方法

接口/类

方法/属性

说明

PIE.AxControls.MapControl

AddLayer

添加图层

DeleteLayer

删除图层

MoveLayer

移动图层到指定位置

PIE.Carto.LayerFactory

CreateDeFaultLayer

创建默认图层

2.3. 示例代码

项目路径

百度云盘地址下/PIE示例程序/02.地图操作/02.地图图层控制

数据路径

百度云盘地址下/PIE示例数据/栅格数据/04.World/World.tif

视频路径

百度云盘地址下/PIE视频教程/02.地图操作/02.地图图层控制.avi

示例代码

        /// 添加图层
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_AddLayer_Click(object sender, EventArgs e)
{
//1、获取数据路径
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Title = "加载数据";
openFileDialog.Filter = "Shape(*.shp)|*.shp|RasterData(*.tiff)|*.tiff;*.tif";
if (openFileDialog.ShowDialog() != DialogResult.OK) return;
//2、获取layer
ILayer layer = LayerFactory.CreateDefaultLayer(openFileDialog.FileName);
//3、添加图层并刷新
mapControlMain.ActiveView.FocusMap.AddLayer(layer, );
mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
}
/// <summary>
/// 删除图层
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_DeleteLayer_Click(object sender, EventArgs e)
{
if (mapControlMain.FocusMap.LayerCount < ) return;
//删除索引为0图层
ILayer layer = mapControlMain.ActiveView.FocusMap.GetLayer();
mapControlMain.ActiveView.FocusMap.DeleteLayer(layer);
} /// <summary>
/// 移动图层
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btn_MoveLayer_Click(object sender, EventArgs e)
{
if (mapControlMain.FocusMap.LayerCount < ) return;
ILayer layer = mapControlMain.ActiveView.FocusMap.GetLayer();
mapControlMain.ActiveView.FocusMap.MoveLayer(layer,);
}

2.4. 示例截图

PIE SDK地图图层控制的更多相关文章

  1. PIE SDK地图图层渲染方案管理

    1. 功能简介 在数据种类较多.渲染规则复杂的情况下,逐个设置其渲染方式是一件繁琐的工作.PIE SDK提供了一种省力省心的办法, PIE SDK提供栅格和矢量数据渲染方案的打开与保存.能够将配色方案 ...

  2. PIE SDK地图范围设置和图层事件监听

    1. 功能简介 地图范围设置的监听就是通过IMapControlEvents接口对地图的视图范围更新或者地图的分辨率发生变化进行监听,然后做出相应的操作. 图层事件的监听就是通过IActiveView ...

  3. PIE SDK地图范围设置

    1.功能简介 地图范围设置主要就是对图层的地图浏览控制,例如地图的放大.缩小.漫游.全图显示.1:1视图.比例尺等功能,能更好的与地图有一个互动的地图浏览体验.PIE SDK对地图范围设置主要利用IC ...

  4. PIE SDK栅格增强控制

    1. 功能简介 亮度是指发光体(反光体)表面发光(反光)强弱的物理量:对比度指的是一幅图像中明暗区域最亮的白和最暗的黑之间不同亮度层级的测量:透明度是描述光线透过的程度 栅格数据增强控制主要是通过对亮 ...

  5. PIE SDK栅格拉伸控制

    1. 功能简介 在我们的实际应用中,对于一般16bit或者更大比特深度的影像,像元值都是大于255的.这种情况下,RGB的显示器是不能够直接使用像元值进行显示的,需要将像元值换算到0~255的区间内以 ...

  6. PIE SDK地图鹰眼图

    鹰眼图,是GIS的一个基本功能,在鹰眼图上可以像从空中俯视一样查看地图框中所显示的地图在整个图中的位置,是对全局地图的一种概述表达,能够起到很好的空间提示和导航的作用.网上有很多Arcengine 二 ...

  7. PIE SDK地图平移校正

    地图平移校正,当加载两幅空间参考一样的影像,其中一幅影像有点偏移,这时就以另一幅影像为基准将其进行平移校正,然后保存,再次加载就不会出现偏移了. 下面来介绍下实现的主要代码: 首先通过选中目录树中的要 ...

  8. PIE SDK栅格图层渲染变化事件监听

    1. 功能简介 通过PIE SDK加载图层后,会默认的赋值给数据一个渲染.当用户重新给数据赋值Render或改变数据显示效果时,会触发渲染变化事件. 所谓的事件监听是在事件触发时,将执行用户指定的函数 ...

  9. PIE SDK地图放大镜

    放大镜,在地图的浏览过程中在主地图和次地图中起到很好的辅助作用, 要实现放大镜功能主要就是通过两个mapControl控件,主地图控件是mapControlMain,放大镜控件是UserControl ...

随机推荐

  1. 多线程协作 FileStream文件读写操作,读写冲突解决

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Tex ...

  2. HUSTSE2017级5班3组小组JIRA软件使用体验看法汇总--未订正版

    小组JIRA软件使用体验看法汇总 小黄 JIRA还是比较方便的,在项目组合管理阶段,可以让团队同时按时发布,也可以让计划变得更容易和快捷,可以跟踪团队的重要计划,清楚的了解项目的进度. 看了JIRA的 ...

  3. delphi让exe开机自启动

    procedure AutoRunOnSystemStart(Title, FileName: String);const  _Software_Microsoft_Windows_CurrentVe ...

  4. 利用find同时查找多种类型文件

    find . -name "*.c" -o -name "*.cpp" -o -name "*.h" 就可以列出当前目录下面所有的c,cpp ...

  5. 函数形参为基类数组,实参为继承类数组,下存在的问题------c++程序设计原理与实践(进阶篇)

    示例: #include<iostream> using namespace std; class A { public: int a; int b; A(int aa=1, int bb ...

  6. Intellij IDEA神器那些让人爱不释手的小技巧

      完整的IDEA使用教程,GitHub地址: https://github.com/judasn/IntelliJ-IDEA-Tutorial 概述 之前写了一篇介绍IntellIJ IDEA的文章 ...

  7. DISCUZ 各数据库表作用

    链接原文:http://forum.digitser.cn/forum.php?mod=viewthread&tid=179 DISCUZ数据字典               http://w ...

  8. uoj #297. 【CTSC2017】密钥

    #297. [CTSC2017]密钥 一个密钥是一个长度为 n=2k+1n=2k+1 的字符串,它包含 11 个字母X.kk 个字母 A 和 kk 个字母 B.例如 k=3k=3 时,BAXABAB ...

  9. 洛谷P2763 试题库问题(最大流)

    传送门 网络流界的一股清流啊……终于没那么变态了…… 考虑一下怎么建图.对于每一个类型,我们从$S$向他连边,容量为它所需的题数,表明它要可以有这么多题,对于每一道题目,我们从它对应的类型向他连边,容 ...

  10. centos虚拟机设置静态ip

    1.虚拟机网络配置设置为桥接模式 2.设置配置文件: vi /etc/sysconfig/network-scripts/ifcfg-ens33 DEVICE=ens33 HWADDR=:0c::c3 ...