PIE SDK柵格RGB渲染
阿新 • • 發佈:2018-12-24
1. 功能簡介
RGB色彩模式是一種顏色標準,是通過對紅(R)、綠(G)、藍(B)三個顏色通道的變化以及它們相互之間的疊加來得到各式各樣的顏色的,RGB即是代表紅、綠、藍三個通道的顏色,這個標準幾乎包括了人類視力所能感知的所有顏色,是目前運用最廣的顏色系統之一。
柵格RGB渲染是通過對R、G、B三個通道分別設定影像中指定波段索引,達到特定的渲染效果。
PIE SDK中RGB渲染中,通道對應的波段索引可以根據柵格資料的波段數進行自由設定,索引值可相同,也可不通。
2. 功能實現說明
2.1 實現思路及原理說明
第一步 |
例項化RGB渲染物件。 |
第二步 |
設定紅、綠、藍波段資訊 |
第三步 |
設定波段索引資訊 |
第四步 |
柵格渲染介面轉換 |
第五步 |
柵格圖層渲染賦值 |
2.2 核心介面與方法
介面/類 |
方法 |
說明 |
Carto. IRasterRGBRender |
UseRedBand |
紅波段資訊 |
UseGreenBand |
綠波段資訊 |
|
UseBlueBand |
藍波段資訊 |
|
SetBandIndices |
設定波段組合 |
2.3 示例程式碼
專案路徑 |
百度雲盤地址下/PIE示例程式/07圖層渲染/07.柵格RGB渲染 |
資料路徑 |
百度雲盤地址下/PIE示例資料/柵格資料/GF1/ |
視訊路徑 |
百度雲盤地址下/PIE視訊教程/07圖層渲染/07.柵格RGB渲染.avi |
示例程式碼 |
|
1 //當前選中的圖層,通過滑鼠點選進行設定 2 if (mapControlMain.ActiveView.CurrentLayer == null)return; 3 //判斷選擇的圖層是否為柵格圖層 4 IRasterLayer rasterLayer = mapControlMain.ActiveView.CurrentLayer as IRasterLayer; 5 if (rasterLayer == null)return; 6 //初始化rgbRender 7 IRasterRGBRender rRGBRender = new PIE.Carto.RasterRGBRender(); 8 9 //設定引數 10 rRGBRender.UseRedBand = true; 11 rRGBRender.UseGreenBand = true; 12 rRGBRender.UseBlueBand = true; 13 //根據柵格資料的波段數進行rgb波段索引設定, 14 rRGBRender.SetBandIndices(3, 2, 1); 15 16 //設定rasterrender 17 IRasterRender render = rRGBRender as IRasterRender; 18 rasterLayer.Render = render; 19 //重新整理檢視 mapControlMain.ActiveView.PartialRefresh(ViewDrawPhaseType.ViewAll);View Code |