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;
54 creaImageIO::WxGimmickReaderDialog w(
57 "localdatabase_Descriptor.dscp",
59 _T("Select image(s) - Gimmick! (c) CREATIS-LRMN 2008"),
68 endwait = clock () + CLOCKS_PER_SEC ;
69 while (clock() < endwait ) {}*/
72 if (w.GetReturnCode() == wxID_OK)
74 std::cout << "$$$$ main : user clicked 'OK' $$$$"<<std::endl;
75 std::cout << "$$$$ selected files : "<<std::endl;
77 std::vector<std::string> s;
78 w.GetSelectedFiles(s);
79 std::vector<std::string>::iterator i;
80 for (i=s.begin();i!=s.end();++i)
82 std::cout << *i << std::endl;
84 std::cout << "$$$$ "<<std::endl;
87 std::vector<vtkImageData*> images;
88 w.GetSelectedImages(images,3);
90 // images[1]->UpdateInformation();
91 /* vtkMetaImageReader *r= vtkMetaImageReader::New();
92 r->SetFileName("c:\\toto.mhd");
94 images[0]->GetSpacing(zz);
96 vtkMetaImageWriter* ww = vtkMetaImageWriter::New();
97 ww->SetFileName("c:\\toto2.mhd");
98 ww->SetInput(images[0]);
99 ww->GetInput()->ShallowCopy(images[0]);
100 ww->UpdateInformation();
101 ww->GetInput()->GetSpacing(zz);
104 //>GetImageDataInput(0)->GetSpacing(zz);
113 //w.GetSelectedImages(images,output_dim);
114 std::cout<<images.size()<<std::endl;
116 crea::VtkBasicSlicer(images.front());
117 images.front()->Delete();
121 else if (w.GetReturnCode() == wxID_CANCEL)
125 std::cout << "$$$$ main : user clicked 'CANCEL' $$$$"<<std::endl;
130 std::cout << "$$$$ main : dialog ended without return code ! $$$$"
135 // std::cout << "$$$$ main : deleting dialog"<<std::endl;
137 std::cout << "$$$$$$$$$$$$$$$$$$$$ main ended "<<std::endl;