#include "OpenImageDialog.h" #include "creaWx.h" #if defined(__GNUC__) // GCC compiler // dlopen, dlsym, etc. #include #endif typedef vtkImageData* (*GETIMAGEDATADIALOG)(); namespace creaMaracasVisuKernel{ OpenImageDialog::OpenImageDialog(bool usegimmick) { img = NULL; bool gimmickfound = false; if(usegimmick){ #ifdef WIN32 HINSTANCE gimmickhandle; gimmickhandle = LoadLibrary(TEXT("creaImageIO2.dll")); std::cout<<"imagehandle "<ShowModal()==wxID_OK) { std::string path= crea::wx2std(FD->GetPath()); vtkMetaImageReader* reader = vtkMetaImageReader::New(); reader->SetFileName(path.c_str()); reader->Update(); img = vtkImageData::New(); img->DeepCopy(reader->GetOutput()); reader->Delete(); /*img->SetSpacing(reader->GetOutput()->GetSpacing()); extint = reader->GetOutput()->GetExtent(); img->SetExtent(extint); img->SetScalarType(reader->GetOutput()->GetScalarType()); img->SetDimensions(reader->GetOutput()->GetDimensions()); img->AllocateScalars(); for (i=extint[0];i <= extint[1];i++){ for (j=extint[2];j<=extint[3];j++){ for (k=extint[4];k<=extint[5];k++){ ptr1=(unsigned short*) reader->GetOutput()->GetScalarPointer(i,j,k); ptr2=(unsigned short*)img->GetScalarPointer(i,j,k); *ptr2 = *ptr1; } } }*/ } //delete FD; } } //------------------------------------------------------------------- OpenImageDialog::~OpenImageDialog() { img = NULL; } vtkImageData* OpenImageDialog::getImageData(){ return img; } }