]> Creatis software - creaContours.git/blob - bbtk/src/bbCreaContournDimensions.cxx
*** empty log message ***
[creaContours.git] / bbtk / src / bbCreaContournDimensions.cxx
1 #include "bbCreaContournDimensions.h"
2 #include "bbCreaContourPackage.h"
3 namespace bbCreaContour
4 {
5
6 BBTK_ADD_BLACK_BOX_TO_PACKAGE(CreaContour,nDimensions)
7 BBTK_BLACK_BOX_IMPLEMENTATION(nDimensions,bbtk::WxBlackBox);
8 void nDimensions::Process()
9 {
10  
11         double **vectx, **vecty, **vectz;
12         std::vector<int> size;
13         vtkImageData *mask, *value;
14
15         if(bbGetInputGet()==1){
16                 bbSetInputGet(0);
17                 eventHandler->checkInformationPanel();
18                 eventHandler->getValuesXYZ(vectx, vecty, vectz, &size); 
19                 eventHandler->getMaskValue(mask, value);
20         }
21
22     bbSetOutputX(vectx);
23         bbSetOutputY(vecty);
24         bbSetOutputZ(vectz);
25         bbSetOutputSizeContour(size);
26         bbSetOutputMask(mask);
27         bbSetOutputValue(value);
28 }
29 void nDimensions::CreateWidget()
30 {
31         std::string s = "data";
32         
33         std::string conceptsFN                  =  s + "/holaConceptsFile.cf";
34         std::string imageSourcesFN              = s + "/holaImagesInstantsFile.of";
35         std::string imageSectionsFN             = "";
36         std::string axeThingsFN                 = "";
37
38         std::map<std::string, ImageSourceThing *> * sourcesMap          = new std::map<std::string, ImageSourceThing *>();
39         std::map<std::string, ImageSectionThing *>* sectionsMap         = new std::map<std::string, ImageSectionThing *>();
40         std::map<std::string, AxeThing *>* axesMap                                      = new std::map<std::string, AxeThing *>();
41         std::map<std::string, ContourThing *>* outlinesMap                      = new std::map<std::string, ContourThing *>();  
42
43         vtkImageData* img = bbGetInputIn();
44         if(img==NULL){
45                 vtkMetaImageReader *reader = vtkMetaImageReader::New();
46                 reader->SetFileName( "data/hola.mhd" );
47                 reader->Update();
48                 img = reader->GetOutput();
49         }
50
51         ImageSourceThing * thing                                                                        = new ImageSourceThing(img);
52         sourcesMap->insert(std::pair<std::string, ImageSourceThing *>( "Source Image 1", thing));
53
54         OutlineModelBuilder * _builder                                                          = new OutlineModelBuilder( conceptsFN, s );
55         _builder->buildImageSource_Envornment( imageSourcesFN, sourcesMap );
56         _builder->buildImageSection_Envornment( imageSectionsFN, sectionsMap );         
57         _builder->buildAxe_Envornment(axeThingsFN, axesMap );
58         _builder->buildCountour_Envornment( imageSectionsFN, outlinesMap );
59         
60         wxFrame* frame1 = new wxFrame(bbGetWxParent(), wxID_ANY, wxT("ROI Application  -    Evaluation version, 23 Oct 2008 "), wxPoint(50,50), wxSize(800, 600) );
61         frame = new wxContourMainFrame( frame1, wxID_ANY, wxString(""), wxPoint(50,50), wxSize(800, 600) ); 
62         frame1->CreateStatusBar();
63
64         wxAuiNotebook * parent = frame->createNotebook();
65
66         OutlineModelManager             * modelManager                          = new OutlineModelManager( _builder->getImSourceEnv(), _builder->getImSectionEnv(), _builder->getAxesEnv(),  _builder->getContourEnv() );
67
68         wxInstantChooserPanel   * instantPanel                          = new wxInstantChooserPanel( parent, "Instant Chooser", true );
69         ImageSourceThing                * imageSource = modelManager->getImageSourceThingByKeyName( "Source Image 1" );
70         wxContourViewPanel              * theViewPanel                          = new wxContourViewPanel( imageSource->getSourceImage(), parent );      
71         
72         eventHandler = new wxContourEventHandler();
73         eventHandler->setModelManager( modelManager );
74         eventHandler->setViewPanel( theViewPanel );
75         eventHandler->setInstantChooserPanel( instantPanel );
76
77         bool successConfiuration = eventHandler->configureEventsHandling();
78
79         frame->setViewPanel( theViewPanel );
80         frame->setInstantChooserPanel( instantPanel );
81
82         successConfiuration &= frame->configurePanels( parent );
83
84
85         interfMainPanel* pannew = interfMainPanel::getInstance(frame1, eventHandler, s+"/Icons");
86
87    bbSetOutputWidget( frame ); 
88
89     
90   
91 }
92 void nDimensions::bbUserConstructor()
93 {
94
95         bbSetInputGet(0);
96
97 }
98 void nDimensions::bbUserCopyConstructor()
99 {
100
101 }
102 void nDimensions::bbUserDestructor()
103 {
104
105 }
106 }
107 // EO namespace bbCreaContour
108
109