1 #include <creaImageIOSystem.h>
3 #include <creaImageIOWxGimmickReaderDialog.h>
4 #include "vtkMetaImageWriter.h"
5 #include "vtkMetaImageReader.h"
6 #include <creaVtkBasicSlicer.h>
10 //#pragma comment(lib, "creaImageIO.lib")
11 //#pragma comment(lib, "DelayImp.lib")
14 //// Tell the linker that my DLL should be delay loaded
15 ////#pragma comment(linker, "/DelayLoad:creaImageIO.Dll")
17 //// Tell the linker that I want to be able to unload my DLL
18 //#pragma comment(linker, "/Delay:unload")
21 class myApp : public wxApp
25 int OnExit() { return true; }
30 CREA_WXMAIN_WITH_CONSOLE
36 //See http://www.wxwindows.org/faqgtk.htm#locale
37 setlocale(LC_NUMERIC, "C");
39 wxInitAllImageHandlers();
41 creaImageIO::SetGimmickMessageLevel(5);
42 creaImageIO::SetGimmickDebugMessageLevel(0);
44 int min_dim = GIMMICK_2D_IMAGE_SELECTION;
45 int max_dim = GIMMICK_3D_IMAGE_SELECTION;
48 // int output_dim = NATIVE;
53 creaImageIO::WxGimmickReaderDialog w(
56 "localdatabase_Descriptor.dscp",
58 _T("Select image(s) - Gimmick! (c) CREATIS-LRMN 2008"),
67 endwait = clock () + CLOCKS_PER_SEC ;
68 while (clock() < endwait ) {}*/
71 if (w.GetReturnCode() == wxID_OK)
73 std::cout << "$$$$ main : user clicked 'OK' $$$$"<<std::endl;
74 std::cout << "$$$$ selected files : "<<std::endl;
76 std::vector<std::string> s;
77 w.GetSelectedFiles(s);
78 std::vector<std::string>::iterator i;
79 for (i=s.begin();i!=s.end();++i)
81 std::cout << *i << std::endl;
83 std::cout << "$$$$ "<<std::endl;
86 std::vector<vtkImageData*> images;
87 w.GetSelectedImages(images,3);
89 // images[1]->UpdateInformation();
90 /* vtkMetaImageReader *r= vtkMetaImageReader::New();
91 r->SetFileName("c:\\toto.mhd");
93 images[0]->GetSpacing(zz);
95 vtkMetaImageWriter* ww = vtkMetaImageWriter::New();
96 ww->SetFileName("c:\\toto2.mhd");
97 ww->SetInput(images[0]);
98 ww->GetInput()->ShallowCopy(images[0]);
99 ww->UpdateInformation();
100 ww->GetInput()->GetSpacing(zz);
103 //>GetImageDataInput(0)->GetSpacing(zz);
112 //w.GetSelectedImages(images,output_dim);
113 std::cout<<images.size()<<std::endl;
115 crea::VtkBasicSlicer(images.front());
116 images.front()->Delete();
120 else if (w.GetReturnCode() == wxID_CANCEL)
124 std::cout << "$$$$ main : user clicked 'CANCEL' $$$$"<<std::endl;
129 std::cout << "$$$$ main : dialog ended without return code ! $$$$"
134 // std::cout << "$$$$ main : deleting dialog"<<std::endl;
136 std::cout << "$$$$$$$$$$$$$$$$$$$$ main ended "<<std::endl;