PIE SDK地图图层控制

 

1. 功能简介

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

2. 功能实现说明

2.1. 实现思路及原理说明

第一步

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

第二步

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

第三步

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

2.2 . 核心接口与方法

接口/类

方法/属性

说明

 

PIE.AxControls.MapControl

 

AddLayer

添加图层

DeleteLayer

删除图层

MoveLayerTo

移动图层到指定位置

PIE.Carto.LayerFactory

CreateDeFaultLayer

创建默认图层

2.3. 示例代码

项目路径

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

数据路径

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

视频路径

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

示例代码

 1          /// <summary>
 2         /// 添加图层
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void btn_AddLayer_Click(object sender, EventArgs e)
 7         {
 8            //1、获取数据路径
 9             OpenFileDialog openFileDialog = new OpenFileDialog();
10             openFileDialog.Title = "加载数据";
11            openFileDialog.Filter = "Shape(*.shp)|*.shp|RasterData(*.tiff)|*.tiff;*.tif";
12             if (openFileDialog.ShowDialog() != DialogResult.OK) return;
13             //2、获取layer
14             ILayer layer = LayerFactory.CreateDefaultLayer(openFileDialog.FileName);
15             //3、添加图层并刷新
16             mapControlMain.AddLayer(layer, 0);
17           mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);     
18    }
19         /// <summary>
20         /// 删除图层
21         /// </summary>
22         /// <param name="sender"></param>
23         /// <param name="e"></param>
24         private void btn_DeleteLayer_Click(object sender, EventArgs e)
25         {
26             if (mapControlMain.FocusMap.LayerCount < 1) return;           
27             mapControlMain.DeleteLayer(0);       
28  }
29 
30         /// <summary>
31         /// 移动图层
32         /// </summary>
33         /// <param name="sender"></param>
34         /// <param name="e"></param>
35         private void btn_MoveLayer_Click(object sender, EventArgs e)
36         {
37             if (mapControlMain.FocusMap.LayerCount < 1) return;          
38             mapControlMain.MoveLayerTo(1,0);
39         }
View Code

2.4              示例截图

 

猜你喜欢

转载自www.cnblogs.com/PIESat/p/10242644.html
pie