Есть tif с 6 каналами. Для его отображения берется растр и для него совместимый растр. Если каналов больше чем 3, то участвуют только первые три канала. Им устанавливается интерпритируемый цвет (red green blue)
Worldwind класс GDALDataRaster, метод createCompatibleDataset(int width, int height, Sector sector, AVList destParams);
...
Driver drvMem = gdal.GetDriverByName("MEM");
int srcNumOfBands = this.dsVRT.getRasterCount();
Band srcBand1 = this.dsVRT.GetRasterBand(1);
int bandDataType = srcBand1.getDataType();
...
if (AVKey.INT16.equals(this.getValue(AVKey.DATA_TYPE)) && srcNumOfBands > 3){
destNumOfBands = 3; // ignore 4th band which is some kind of infra-red
}
...
Dataset ds = drvMem.Create("roi", width, height, destNumOfBands, bandDataType);
...
Вопрос, возможно ли как то создать org.gdal.gdal.Dataset с конкретными каналами (3,2,4), а не с первыми тремя?
Сборка персонального компьютера от Artline: умный выбор для современных пользователей