使用GDAL库读图的一个问题
通过gdal库按一行一行的顺序读入某一波段信息,存入位图的数据区
nXSize,nYSize分别表示高宽
//建立数据区LONG LineBytes = (nXsize*8+31)/32*4;pData= (LPBYTE)new char[LineBytes*nYsize];poBandBlock= (BYTE*)CPLMalloc(sizeof(BYTE)*(nXsize*1));//为各像素赋值for (int i=0; i<nYsize; i++){ //一次读取一行读取 poBand[dlg.Gray]->RasterIO(GF_Read, 0, i, nXsize, i+1, poBandBlock,nXsize, 1,GDT_Byte, 0, 0); for (int j=0; j<nXsize; j++) pData[(nYsize-i-1)*LineBytes + j] = poBandBlock[j]; }CPLFree(poBandBlock);