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);
93 std::vector<creaImageIO::OutStrGimmick> out;
94 std::vector<std::string> attr;
95 //attr.push_back("ALL");
96 attr.push_back("D0008_1070");
97 w.getSelected(out, attr,true,"");
101 // images[1]->UpdateInformation();
102 /* vtkMetaImageReader *r= vtkMetaImageReader::New();
103 r->SetFileName("c:\\toto.mhd");
105 images[0]->GetSpacing(zz);
107 vtkMetaImageWriter* ww = vtkMetaImageWriter::New();
108 ww->SetFileName("c:\\toto2.mhd");
109 ww->SetInput(images[0]);
110 ww->GetInput()->ShallowCopy(images[0]);
111 ww->UpdateInformation();
112 ww->GetInput()->GetSpacing(zz);
115 //>GetImageDataInput(0)->GetSpacing(zz);
124 //w.GetSelectedImages(images,output_dim);
125 std::cout<<images.size()<<std::endl;
127 crea::VtkBasicSlicer(images.front());
128 images.front()->Delete();
132 else if (w.GetReturnCode() == wxID_CANCEL)
136 std::cout << "$$$$ main : user clicked 'CANCEL' $$$$"<<std::endl;
141 std::cout << "$$$$ main : dialog ended without return code ! $$$$"
146 // std::cout << "$$$$ main : deleting dialog"<<std::endl;
148 std::cout << "$$$$$$$$$$$$$$$$$$$$ main ended "<<std::endl;