00001 #include "wxVtkMPR3DViewCntrlPanel.h"
00002
00003 #include "HistogramDialog.h"
00004
00005 wxVtkMPR3DViewCntrlPanel::wxVtkMPR3DViewCntrlPanel(wxWindow *parent, wxVtkMPR3DView *wxvtkmpr3Dview, bool align )
00006 : wxPanel(parent, -1)
00007 {
00008 wxPanel *panel = this;
00009 _wxvtkmpr3Dview = wxvtkmpr3Dview;
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 ckBoxX = new wxCheckBox(panel,-1,_T("X "));
00031 _positionX = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
00032 ckBoxY = new wxCheckBox(panel,-1,_T("Y "));
00033 _positionY = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
00034 ckBoxZ = new wxCheckBox(panel,-1,_T("Z "));
00035 _positionZ = new wxSlider(panel,-1,0,0,1, wxDefaultPosition, wxSize(300,40), wxSL_HORIZONTAL | wxSL_LABELS);
00036 wxButton *btnColorTable = new wxButton (panel, -1, _T("Color Table") );
00037
00038 _ckBoxXYZ = new wxCheckBox(panel,-1,_T("Show XYZ axis "));
00039 _ckBoxPlane = new wxCheckBox(panel,-1,_T("Show Planes"));
00040
00041 _ckFreePlaneX= new wxCheckBox(panel,-1,_T("free X"));;
00042 _ckFreePlaneY= new wxCheckBox(panel,-1,_T("free Y"));;
00043 _ckFreePlaneZ= new wxCheckBox(panel,-1,_T("free Z"));;
00044 _ckFreePlaneInteraction= new wxCheckBox(panel,-1,_T("Interaction "));;
00045
00046
00047 _ckFreePlaneX->SetValue(true);
00048 _ckFreePlaneY->SetValue(false);
00049 _ckFreePlaneZ->SetValue(false);
00050 _ckFreePlaneInteraction->SetValue(true);
00051
00052 ckBoxX->SetValue(false);
00053 ckBoxY->SetValue(false);
00054 ckBoxZ->SetValue(false);
00055 _ckBoxXYZ->SetValue(false);
00056 _ckBoxPlane->SetValue(false);
00057
00058 _positionX->SetSize(400,20);
00059 _positionY->SetSize(400,20);
00060 _positionZ->SetSize(400,20);
00061
00062 Connect(ckBoxX->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisX );
00063 Connect(_positionX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnPositionX );
00064 Connect(ckBoxY->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisY );
00065 Connect(_positionY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnPositionY );
00066 Connect(ckBoxZ->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisZ );
00067 Connect(_positionZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnPositionZ );
00068 Connect(btnColorTable->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnEditColorTable );
00069
00070 Connect(_ckBoxXYZ->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleAxisXYZ );
00071 Connect(_ckBoxPlane->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisiblePlane );
00072
00073 Connect(_ckFreePlaneX->GetId() , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneX );
00074 Connect(_ckFreePlaneY->GetId() , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneY );
00075 Connect(_ckFreePlaneZ->GetId() , wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneZ );
00076 Connect(_ckFreePlaneInteraction->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction) &wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneInteraction );
00077
00078 wxFlexGridSizer *sizer;
00079
00080
00081
00082
00083
00084 wxFlexGridSizer *sizerH4;
00085 wxFlexGridSizer *sizerH5;
00086 wxFlexGridSizer *sizerH6;
00087 if(align)
00088 {
00089 sizer = new wxFlexGridSizer(3);
00090
00091 sizerH4 = new wxFlexGridSizer(2);
00092 sizerH4->Add( _positionX ,1,wxGROW , 0 );
00093 sizerH4->Add( ckBoxX ,0,wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00094 sizerH4->Add( _positionY ,1,wxGROW, 0 );
00095 sizerH4->Add( ckBoxY ,0,wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00096 sizerH4->Add( _positionZ ,1,wxGROW, 0 );
00097 sizerH4->Add( ckBoxZ ,0,wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00098
00099 sizerH5 = new wxFlexGridSizer(1);
00100 sizerH5->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00101 sizerH5->Add( _ckBoxXYZ , 1, wxALL|wxEXPAND, 0);
00102 sizerH5->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00103 sizerH5->Add( _ckBoxPlane , 1, wxALL|wxEXPAND, 0);
00104 sizerH5->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00105 sizerH5->Add( btnColorTable , 0, wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00106
00107
00108 sizerH6 = new wxFlexGridSizer(1);
00109 sizerH6->Add( _ckFreePlaneX, 1, wxALL|wxEXPAND, 0);
00110 sizerH6->Add( _ckFreePlaneY, 1, wxALL|wxEXPAND, 0);
00111 sizerH6->Add( _ckFreePlaneZ, 1, wxALL|wxEXPAND, 0);
00112 sizerH6->Add( _ckFreePlaneInteraction , 1, wxALL|wxEXPAND, 0);
00113
00114 } else {
00115 sizer = new wxFlexGridSizer(1);
00116
00117 sizerH4 = new wxFlexGridSizer(10);
00118 sizerH5 = new wxFlexGridSizer(10);
00119 sizerH6 = new wxFlexGridSizer(10);
00120
00121 sizerH4->Add( _positionX , 1, wxGROW , 0 );
00122 sizerH4->Add( ckBoxX , 0, wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00123 sizerH4->Add( _positionY , 1, wxGROW , 0 );
00124 sizerH4->Add( ckBoxY , 0, wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00125 sizerH4->Add( _positionZ , 1, wxGROW , 0 );
00126 sizerH4->Add( ckBoxZ , 0, wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00127 sizerH4->Add( btnColorTable , 0, wxALIGN_CENTER_VERTICAL|wxSHAPED, 0 );
00128
00129 sizerH5->Add( _ckBoxXYZ , 1, wxALL|wxEXPAND, 0);
00130 sizerH5->Add( _ckBoxPlane , 1, wxALL|wxEXPAND, 0);
00131 sizerH5->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00132
00133 sizerH6 = new wxFlexGridSizer(10);
00134 sizerH6->Add( _ckFreePlaneX , 1, wxALL|wxEXPAND, 0);
00135 sizerH6->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00136 sizerH6->Add( _ckFreePlaneY , 1, wxALL|wxEXPAND, 0);
00137 sizerH6->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00138 sizerH6->Add( _ckFreePlaneZ , 1, wxALL|wxEXPAND, 0);
00139 sizerH6->Add( new wxStaticText(panel, -1,_T(" ")) , 1, wxALL|wxEXPAND, 0);
00140 sizerH6->Add( _ckFreePlaneInteraction , 1, wxALL|wxEXPAND, 0);
00141 }
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170
00171
00172
00173 sizer->Add( sizerH4, 1, wxALL|wxGROW, 2);
00174 sizer->Add( sizerH5, 1, wxALL|wxEXPAND,2);
00175 sizer->Add( sizerH6, 1, wxALL|wxEXPAND,2);
00176
00177 panel->SetSize(400,50);
00178 panel->SetAutoLayout(true);
00179 panel->SetSizer(sizer);
00180 panel->Layout();
00181
00182 panel->SetEventHandler((wxEvtHandler*)this);
00183
00184
00185 }
00186 void wxVtkMPR3DViewCntrlPanel::UpdateControlPanel()
00187 {
00188 vtkMPRBaseData* basedata = _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData();
00189 if(basedata != NULL){
00190
00191
00192
00193
00194 vtkImageData* img = basedata->GetImageData();
00195 int x0,x1,y0,y1,z0,z1;
00196
00197
00198
00199
00200
00201
00202
00203
00204 if(img){
00205 img->GetExtent(x0,x1,y0,y1,z0,z1);
00206 _positionX->SetRange(x0,x1);
00207 _positionY->SetRange(y0,y1);
00208 _positionZ->SetRange(z0,z1);
00209
00210 _positionX->SetValue((x0+x1)/2);
00211 _positionY->SetValue((y0+y1)/2);
00212 _positionZ->SetValue((z0+z1)/2);
00213
00214 _positionX->Update();
00215 _positionY->Update();
00216 _positionZ->Update();
00217 this->Update();
00218 }
00219
00220 }
00221
00222 }
00223
00224 wxVtkMPR3DViewCntrlPanel::~wxVtkMPR3DViewCntrlPanel()
00225 {
00226 }
00227
00228 void wxVtkMPR3DViewCntrlPanel::Refresh()
00229 {
00230
00231 _positionX->SetValue( (int)(_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetX( )) );
00232 _positionY->SetValue( (int)(_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetY( )) );
00233 _positionZ->SetValue( (int)(_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetZ( )) );
00234 }
00235
00236
00237
00238
00239
00240
00241
00242
00243
00244
00245
00246
00247
00248
00249
00250
00251
00252
00253
00254
00255
00256
00257
00258
00259
00260
00261
00262 void wxVtkMPR3DViewCntrlPanel::OnEditColorTable(wxCommandEvent& event)
00263 {
00264
00265 vtkColorTransferFunction *ctfun = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetvtkColorTransferFunction();
00266 std::vector<double> *ctfunVectorPoint = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetctFunVectorPoint();
00267 std::vector<double> *ctfunVectorRed = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetctFunVectorRed();
00268 std::vector<double> *ctfunVectorGreen = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetctFunVectorGreen();
00269 std::vector<double> *ctfunVectorBlue = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetctFunVectorBlue();
00270
00271
00272
00273
00274 int i=0,xi,r,g,b;
00275
00276 vtkImageData *imagedata = this->_wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->GetImageData();
00277
00278 HistogramDialog* hDlg=new HistogramDialog(NULL,_T("Color table"),imagedata,2);
00279
00280
00281 hDlg->erasePointsTransferenceFunction();
00282 int ctfSize=ctfunVectorRed->size();
00283 if(ctfSize>0)
00284 {
00285
00286 int i=0;
00287 while(i<ctfSize)
00288 {
00289 double gr = (*ctfunVectorPoint)[i];
00290 double r = (*ctfunVectorRed)[i];
00291 double g = (*ctfunVectorGreen)[i];
00292 double b = (*ctfunVectorBlue)[i];
00293
00294 hDlg->addColorPoint(gr,(int)(r*255),(int)(g*255),(int)(b*255));
00295
00296 i++;
00297 }
00298 }
00299
00300
00301
00302
00303
00304
00305
00306 hDlg->setCTF(ctfun);
00307
00308
00309 if(hDlg->ShowModal()== wxID_OK )
00310 {
00311
00312
00313 ctfun->RemoveAllPoints ();
00314
00315 ctfunVectorPoint->clear();
00316 ctfunVectorRed->clear();
00317 ctfunVectorGreen->clear();
00318 ctfunVectorBlue->clear();
00319
00320 int nCTFpoints=hDlg->getSizeBarColor();
00321
00322 i=0;
00323 while(i<nCTFpoints)
00324 {
00325 hDlg->getDataBarColorPoint(i,xi,r,g,b);
00326
00327
00328
00329
00330
00331
00332
00333
00334
00335
00336 ctfun->AddRGBPoint(xi,r/255.0,g/255.0,b/255.0 );
00337 ctfunVectorPoint->push_back(xi);
00338 ctfunVectorRed->push_back(r/255.0);
00339 ctfunVectorGreen->push_back(g/255.0);
00340 ctfunVectorBlue->push_back(b/255.0);
00341 i++;
00342
00343 }
00344
00345 }
00346
00347 else
00348 {
00349
00350 if(hDlg->getRefreshed())
00351 {
00352
00353 ctfun->RemoveAllPoints ();
00354
00355 int i=0;
00356 int size=ctfunVectorPoint->size();
00357
00358 for(i=0;i<size;i++)
00359 {
00360 double grey2=(*ctfunVectorPoint)[i];
00361 double red =(*ctfunVectorRed)[i];
00362 double green =(*ctfunVectorGreen)[i];
00363 double blue = (*ctfunVectorBlue)[i];
00364 ctfun->AddRGBPoint(grey2,red,green,blue);
00365 }
00366 }
00367
00368 }
00369
00370 hDlg->Destroy();
00371 }
00372
00373
00374
00375 void wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneX(wxCommandEvent& event)
00376 {
00377 _wxvtkmpr3Dview->FreePlaneVisible( 1, event.IsChecked() );
00378 _wxvtkmpr3Dview->FreePlaneInteraction( _ckFreePlaneInteraction->GetValue() );
00379 }
00380
00381
00382 void wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneY(wxCommandEvent& event)
00383 {
00384 _wxvtkmpr3Dview->FreePlaneVisible( 2, event.IsChecked() );
00385 _wxvtkmpr3Dview->FreePlaneInteraction( _ckFreePlaneInteraction->GetValue() );
00386 }
00387
00388
00389
00390 void wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneZ(wxCommandEvent& event)
00391 {
00392 _wxvtkmpr3Dview->FreePlaneVisible( 3, event.IsChecked() );
00393 _wxvtkmpr3Dview->FreePlaneInteraction( _ckFreePlaneInteraction->GetValue() );
00394 }
00395
00396
00397
00398 void wxVtkMPR3DViewCntrlPanel::OnVisibleFreePlaneInteraction(wxCommandEvent& event)
00399 {
00400 _wxvtkmpr3Dview->FreePlaneInteraction( event.IsChecked() );
00401 }
00402
00403
00404
00405 void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisX(wxCommandEvent& event)
00406 {
00407
00408 _wxvtkmpr3Dview->VisibleImageActor(0, event.IsChecked() );
00409 _wxvtkmpr3Dview->Refresh();
00410
00411 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00412
00413 try{
00414 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00415 }catch(char* e){
00416 std::cout<<e<<std::endl;
00417 }
00418 }
00419
00420 void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisY(wxCommandEvent& event)
00421 {
00422 _wxvtkmpr3Dview->VisibleImageActor(1, event.IsChecked() );
00423 _wxvtkmpr3Dview->Refresh();
00424
00425 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00426 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00427
00428 }
00429
00430 void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisZ(wxCommandEvent& event)
00431 {
00432 _wxvtkmpr3Dview->VisibleImageActor(2, event.IsChecked() );
00433 _wxvtkmpr3Dview->Refresh();
00434
00435 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00436 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00437 }
00438
00439
00440 void wxVtkMPR3DViewCntrlPanel::OnVisibleAxisXYZ(wxCommandEvent& event)
00441 {
00442
00443 _wxvtkmpr3Dview->VisiblePointWidget(event.IsChecked());
00444 }
00445
00446
00447 void wxVtkMPR3DViewCntrlPanel::OnVisiblePlane(wxCommandEvent& event)
00448 {
00449 _wxvtkmpr3Dview->VisiblePlaneWidget(event.IsChecked());
00450
00451 }
00452
00453
00454 void wxVtkMPR3DViewCntrlPanel::OnPositionX(wxScrollEvent& event)
00455 {
00456 _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetX( _positionX->GetValue() );
00457 _wxvtkmpr3Dview->RefreshView();
00458
00459 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00460 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00461 }
00462
00463 void wxVtkMPR3DViewCntrlPanel::OnPositionY(wxScrollEvent& event)
00464 {
00465 _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetY( _positionY->GetValue() );
00466 _wxvtkmpr3Dview->RefreshView();
00467 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00468 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00469 }
00470
00471 void wxVtkMPR3DViewCntrlPanel::OnPositionZ(wxScrollEvent& event)
00472 {
00473 _wxvtkmpr3Dview->GetVtkMPR3DDataViewer()->GetVtkMPRBaseData()->SetZ( _positionZ->GetValue() );
00474 _wxvtkmpr3Dview->RefreshView();
00475 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00476 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00477 }
00478
00479
00480 bool wxVtkMPR3DViewCntrlPanel::GetVisibleX()
00481 {
00482 return ckBoxX->GetValue();
00483 }
00484
00485
00486 bool wxVtkMPR3DViewCntrlPanel::GetVisibleY()
00487 {
00488 return ckBoxY->GetValue();
00489 }
00490
00491
00492 bool wxVtkMPR3DViewCntrlPanel::GetVisibleZ()
00493 {
00494 return ckBoxZ->GetValue();
00495 }
00496
00497
00498 bool wxVtkMPR3DViewCntrlPanel::GetVisibleXYZ()
00499 {
00500 return _ckBoxXYZ->GetValue();
00501 }
00502
00503
00504 bool wxVtkMPR3DViewCntrlPanel::GetVisiblePlane()
00505 {
00506 return _ckBoxPlane->GetValue();
00507 }
00508
00509
00510 void wxVtkMPR3DViewCntrlPanel::SetVisibleX(bool value)
00511 {
00512 ckBoxX->SetValue(value);
00513
00514 _wxvtkmpr3Dview->VisibleImageActor(0, value );
00515 _wxvtkmpr3Dview->Refresh();
00516
00517 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00518 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00519 }
00520
00521
00522 void wxVtkMPR3DViewCntrlPanel::SetVisibleY(bool value)
00523 {
00524 ckBoxY->SetValue(value);
00525
00526 _wxvtkmpr3Dview->VisibleImageActor(1, value );
00527 _wxvtkmpr3Dview->Refresh();
00528
00529 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00530 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00531 }
00532
00533
00534 void wxVtkMPR3DViewCntrlPanel::SetVisibleZ(bool value)
00535 {
00536 ckBoxZ->SetValue(value);
00537
00538 _wxvtkmpr3Dview->VisibleImageActor(2, value );
00539 _wxvtkmpr3Dview->Refresh();
00540
00541 wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121);
00542 _wxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1);
00543 }
00544
00545
00546 void wxVtkMPR3DViewCntrlPanel::SetVisibleXYZ(bool value)
00547 {
00548 _ckBoxXYZ->SetValue(value);
00549 _wxvtkmpr3Dview->VisiblePointWidget(value);
00550
00551 }
00552
00553
00554 void wxVtkMPR3DViewCntrlPanel::SetVisiblePlane(bool value)
00555 {
00556 _ckBoxPlane->SetValue(value);
00557 _wxvtkmpr3Dview->VisiblePlaneWidget(value);
00558 }