2 #include "bbmaracasvisuViewerMPR.h"
3 #include "bbcreaMaracasVisuPackage.h"
4 namespace bbcreaMaracasVisu
7 //--------------------------------------------------------------------------
8 //--------------------------------------------------------------------------
9 //--------------------------------------------------------------------------
12 //--------------------------------------------------------------------------
14 //--------------------------------------------------------------------------
15 BEGIN_EVENT_TABLE( wxWidgetMPR, wxPanel )
16 EVT_MENU( 12121, wxWidgetMPR::OnRefreshView )
17 EVT_MENU( 12122, wxWidgetMPR::OnDClickLeft )
23 wxWidgetMPR::wxWidgetMPR(ViewerMPR* box,wxWindow* parent, marImageData *marimagedata)
24 : wxPanel( parent, -1 )
26 wxPanel *panel = this;
30 wxwidget = new wxMPRWidget2( panel, marimagedata , 1 );
32 if(marimagedata != NULL){
33 wxwidget->ConfigureVTK();
35 wxFlexGridSizer *sizer=new wxFlexGridSizer(1);
36 sizer -> Add( wxwidget,0,wxGROW );
37 sizer -> AddGrowableCol(1);
38 panel -> SetSizer(sizer);
39 panel -> SetAutoLayout(true);
43 void wxWidgetMPR::setImageData(vtkImageData* img){
44 wxwidget->setImageData(img, 1);
46 void wxWidgetMPR::ConfigureVTK(){
47 wxwidget->ConfigureVTK();
49 //--------------------------------------------------------------------------
50 wxWidgetMPR::~wxWidgetMPR()
54 //--------------------------------------------------------------------------
58 std::vector<int> wxWidgetMPR::GetPoint()
65 vtkRenderer* wxWidgetMPR::GetRenderer()
69 return wxwidget->GetWxvtkmpr3Dview_BB()->GetWxvtk3Dbaseview()->GetRenderer();
77 //--------------------------------------------------------------------------
78 void wxWidgetMPR::Refresh()
80 wxwidget->RefreshView();
83 //--------------------------------------------------------------------------
87 void wxWidgetMPR::OnRefreshView(wxCommandEvent &event)
90 if((wxwidget!=NULL) && (mbbViewerMPR!=NULL))
93 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetX());
94 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetY());
95 point.push_back((int)wxwidget->GetVtkMPRBaseData()->GetZ());
96 mbbViewerMPR->bbSetOutputPoint( GetPoint() );
97 mbbViewerMPR->bbSignalOutputModification(std::string("Point"));
98 wxwidget->RefreshView();
102 //--------------------------------------------------------------------------
103 void wxWidgetMPR::OnDClickLeft(wxCommandEvent & event)
105 wxwidget->RefreshView();
108 //--------------------------------------------------------------------------
109 //--------------------------------------------------------------------------
110 //--------------------------------------------------------------------------
119 BBTK_ADD_BLACK_BOX_TO_PACKAGE(creaMaracasVisu,ViewerMPR)
120 BBTK_BLACK_BOX_IMPLEMENTATION(ViewerMPR,bbtk::WxBlackBox);
121 void ViewerMPR::Process()
125 vtkImageData* img = bbGetInputIn();
126 if(img!=NULL && img != _img){
128 wxwidget->setImageData(_img);
129 wxwidget->ConfigureVTK();
131 // wxwidget->wxPanel::Refresh();
138 bbSetOutputPoint( wxwidget->GetPoint() );
139 bbSetOutputRenderer( wxwidget->GetRenderer() );
143 void ViewerMPR::CreateWidget(wxWindow* parent)
145 bbtkDebugMessageInc("Core",9,"ViewerMPR::CreateWidget() " <<std::endl);
146 //JCP 10 - 03 - 09 marImageData *marimagedata = new marImageData(bbGetInputIn() );
147 bbtkDebugDecTab("Core",9);
148 wxwidget = new wxWidgetMPR(this , parent);//JCP 10 - 03 - 09,marimagedata);
149 bbSetOutputWidget( wxwidget );
152 void ViewerMPR::bbUserConstructor()
158 void ViewerMPR::bbUserCopyConstructor(bbtk::BlackBox::Pointer)
164 void ViewerMPR::bbUserDestructor()
169 // EO namespace bbcreaMaracasVisu