GDAL合并TIF图片的问题,代码如下,希望高手回答

doubleadfGeoTransform[6];m_GDALDataset=(GDALDataset*)GDALOpen("d:\\1.tif",GA_ReadOnly... double adfGeoTransform[6];
m_GDALDataset = (GDALDataset *)GDALOpen("d:\\1.tif",GA_ReadOnly);
GDALDriver *poDriver = m_GDALDataset->GetDriver();
char ** papszMetadata = poDriver->GetMetadata();
//检测是否支持create函数
/*if( CSLFetchBoolean(papszMetadata,GDAL_DCAP_CREATE, FALSE ) )
AfxMessageBox("支持Create");
if( CSLFetchBoolean( papszMetadata, GDAL_DCAP_CREATECOPY, FALSE ) )
AfxMessageBox("支持CreateCopy");
return;*/

GDALDataset *poDstDS;
poDstDS = poDriver->Create("c:\\1.tif",512,512,m_GDALDataset->GetRasterCount(),GDT_Byte,papszMetadata);
GDALDataset *ptmp = (GDALDataset *)GDALOpen("d:\\2.tif",GA_ReadOnly);
if(poDstDS == NULL)
AfxMessageBox("创建失败!");
//设置图像坐标,缺少这一步,创建的图像用erdas打开将无法正常现实
//double adfGeoTransform1[6]={0,1,0,0,0,1};
poDstDS->SetGeoTransform(adfGeoTransform);
//要考入的内存
BYTE *ppafScan= (BYTE*)CPLMalloc(sizeof(BYTE)*512*512*m_GDALDataset->GetRasterCount());//new BYTE[512*512*m_GDALDataset->GetRasterCount()];
m_GDALDataset->RasterIO(GF_Read,0,0,512,512,ppafScan,512,512,GDT_Byte,m_GDALDataset->GetRasterCount(),0,3,0,1);
poDstDS->RasterIO(GF_Write,0,0,512,512,ppafScan,512,512,GDT_Byte,m_GDALDataset->GetRasterCount(),0,3,0,1);
为什么合并后的图片一片黑?
展开
 我来答
随和又倜傥的爱侣1
2010-11-19
知道答主
回答量:28
采纳率:0%
帮助的人:0
展开全部
ppafScan拷贝数据的位置错误!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式