通过这个代码可以实现输入tif、tiff文件所在的文件夹,在对应的位置生成一个文件夹然后在该文件夹中生成v3draw图像。如果不需要可以注释这部分代码。
QString folder=QFileDialog::getExistingDirectory(0,"openFolder");
cout<<folder.toUtf8().data()<<endl;
QStringList all_tif_names;
QDir qdir(folder);
QStringList filters;
filters << "*.tif" << "*.tiff";
qdir.setNameFilters(filters);
all_tif_names=qdir.entryList();
for(int i=0;i<all_tif_names.size();i++)
{
cout<<all_tif_names.at(i).toUtf8().data()<<endl;
QString temp_image_name=all_tif_names.at(i);
QString ini_img_name;
ini_img_name.append(folder);
ini_img_name.append("/");
ini_img_name.append(temp_image_name);
QString true_image_name;
true_image_name.append(folder);
true_image_name.append("/");
true_image_name.append(temp_image_name);
true_image_name.append(".v3draw/");
cout<<"folderName:"<<true_image_name.toUtf8().data()<<endl;
if (_access(true_image_name.toUtf8().data(), 0) == -1)
{
cout<<"folderName unexist so creat:"<<true_image_name.toUtf8().data()<<endl;
_mkdir(true_image_name.toUtf8().data());
}
true_image_name.append(temp_image_name);
true_image_name.append(".v3draw");
cout<<"finalFileName:"<<true_image_name.toUtf8().data()<<endl;
Image4DSimple * newimg=callback.loadImage(ini_img_name.toUtf8().data());
// newimg->saveImage(true_image_name.toUtf8().data());
V3DLONG sz[4]={newimg->getXDim(),newimg->getYDim(),newimg->getZDim(),newimg->getCDim()};
simple_saveimage_wrapper(callback,true_image_name.toUtf8().data(),newimg->getRawData(),sz,ImagePixelType::V3D_UINT8);
cout<<endl<<endl<<endl;
// newimg->deleteRawDataAndSetPointerToNull();
}