PIE SDK柵格數據惟一值渲染

 

1. 功能簡介

    柵格數據惟一值渲染,是以像元爲單位,不一樣的像元值設置不一樣的顏色,從而達到惟一值顯示的效果。dom

2. 功能實現說明

2.1. 實現思路及原理說明

第一步ide

實例化惟一值渲染對象spa

第二步code

初始化惟一值對象,將各級值加入到惟一值對象中視頻

第三步對象

初始化Color列表,對每個值設置對應顏色blog

第四步教程

惟一值渲染對象屬性賦值,包括惟一值、顏色、波段索引索引

第五步接口

柵格渲染接口轉換

第六步

柵格圖層渲染賦值

2.2. 核心接口與方法

接口/類

方法

說明

 

 

Carto. IRasterUniqueValueRender

ClassColors

顏色屬性

UniqueValues

惟一值屬性

SetBandIndex()

設置分級波段索引

Carto. IUniqueValues

Add

添加惟一值

2.3. 示例代碼

項目路徑

百度雲盤地址下/PIE示例程序/07圖層渲染/09.柵格惟一值渲染

數據路徑

百度雲盤地址下/PIE示例數據/柵格數據/ 01.GF1/ GF1_PMS1_E116.5_N39.4_20131127_L1A0000117600-MSS1.tif

視頻路徑

百度雲盤地址下/PIE視頻教程/07圖層渲染/09.柵格惟一值渲染.avi

示例代碼

 1 //用的0-16的數據
 2     if (mapControlMain.ActiveView.CurrentLayer == null)
 3         return;
 4     IRasterLayer rasterLayer = mapControlMain.ActiveView.CurrentLayer as IRasterLayer;
 5     if (rasterLayer == null)
 6         return;
 7 IRasterUniqueValueRender rasterUniqueValueRender = new PIE.Carto.RasterUniqueValueRender();
 8 //惟一值對象
 9     IUniqueValues uniqueValues = new UniqueValues();
10 uniqueValues.Clear();
11 //顏色對象
12     IList<Color> colors = new List<Color>();
13     Random rd = new Random();
14             
15     for(int i=0;i<17;i++)
16     {
17         colors.Add(Color.FromArgb(rd.Next(1, 255), rd.Next(1, 255), rd.Next(1, 255)));
18         rasterUniqueValueRender.SetLabel(i, "數值" + i.ToString());
19         uniqueValues.Add(i, 1);
20     }
21 
22     //設置RasterUniqueValueRender
23     rasterUniqueValueRender.ClassColors = colors;
24     rasterUniqueValueRender.UniqueValues = uniqueValues;
25     rasterUniqueValueRender.SetBandIndex(0); //設置要惟一值渲染的波段索引號
26 
27     //設置rasterRender
28     IRasterRender rasterRender = rasterUniqueValueRender as IRasterRender;
29     rasterLayer.Render = rasterRender;
30 // 添加圖層到地圖並刷新
31  mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);
View Code

2.4. 示例截圖

 

相關文章
相關標籤/搜索