柵格數據拉伸渲染是對指定的波段進行圖像拉伸,並設置拉伸以後的顏色帶,根據像元值和顏色帶進行數據渲染。ide
第一步spa |
實例化拉伸渲染對象示例code |
第二步視頻 |
設置要拉伸的波段索引號對象 |
第三步blog |
設置拉伸後的顏色教程 |
第四步索引 |
柵格渲染接口轉換接口 |
第五步ci |
柵格圖層渲染賦值 |
接口/類 |
方法 |
說明 |
Carto. IRasterStretchColorRampRender |
BandIndex |
波段索引 |
ClassColors |
顏色集合 |
|
Display.IAlgorithmicColorRamp |
FromColor |
源顏色 |
ToColor |
目標顏色 |
|
CreateRamp() |
建立顏色帶 |
項目路徑 |
百度雲盤地址下/PIE示例程序/07圖層渲染/06.柵格拉伸渲染 |
數據路徑 |
百度雲盤地址下/PIE示例數據/柵格數據/04.World/CC_2018082615.tif |
視頻路徑 |
百度雲盤地址下/PIE視頻教程/07圖層渲染/06.柵格拉伸渲染.avi |
示例代碼 |
|
1 if (mapControlMain.ActiveView.CurrentLayer == null) return; 2 //選中的圖層是否爲柵格圖層 3 IRasterLayer rasterLayer = mapControlMain.ActiveView.CurrentLayer as IRasterLayer; 4 if (rasterLayer == null) return; 5 //設置色帶 6 IAlgorithmicColorRamp algoColorRamp = new AlgorithmicColorRamp(); 7 algoColorRamp.FromColor = Color.Green; 8 algoColorRamp.ToColor = Color.DarkOrange; 9 10 bool resultOK = algoColorRamp.CreateRamp(); 11 //設置StretchColorRampRender 12 IRasterStretchColorRampRender rasterSColorRampRender = new RasterStretchColorRampRender(); 13 rasterSColorRampRender.BandIndex = 0; //設置要拉伸的波段索引號 14 rasterSColorRampRender.ClassColors = (algoColorRamp as IColorRamp).GetColors(); 15 //設置Render屬性 16 IRasterRender rasterRender = rasterSColorRampRender as IRasterRender; 17 rasterLayer.Render = rasterRender; 18 // 刷新地圖 19 mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll); |