X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasRenderTabbedPanel.cpp;h=69538a803325c1ed55e479c7fcbc3ad52d1bedb6;hb=b90d2dce776b27c95bd59251ee83d10a42b0cae5;hp=eb97a9e421f75f442962ed379a7de1672ab361f0;hpb=2098cdccd2ed2c0593b36175bf67f4ee5230c327;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.cpp b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.cpp index eb97a9e..69538a8 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.cpp +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasRenderTabbedPanel.cpp @@ -1,27 +1,64 @@ +/*# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Sant�) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ */ + #include "wxMaracasRenderTabbedPanel.h" -#include "HistogramDialogComboBox.h" +#include "HistogramDialogComboBox.h" #include "wxMaracasMultipleVolumeRendererPanel.h" #include "wxMaracasSurfaceRenderingPanel.h" #include "wxMaracasSurfaceRenderingProp3DMHD.h" -#include "wxMaracasMultipleVolumeRendererManagerData.h" +#include "volumerenderermanagerdata.h" +#include "wxMaracasDialog_NViewers.h" +#include "wxVtkMPR3DViewCntrlPanel.h" #include #include - +#include #include + #include "Color.xpm" +//#include "creaSystem.h" -#include +#include "creaWx.h" + + BEGIN_EVENT_TABLE( wxMaracasRenderTabbedPanel, wxPanel ) + EVT_MENU( 12121, wxMaracasRenderTabbedPanel::OnRefreshView ) + //EVT_MENU( 12122, wxMaracasRenderTabbedPanel::OnDClickLeft ) + END_EVENT_TABLE( ); /** ** Class constructor **/ -wxMaracasRenderTabbedPanel::wxMaracasRenderTabbedPanel(wxWindow* parent, int id) -: wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize) +wxMaracasRenderTabbedPanel::wxMaracasRenderTabbedPanel(wxWindow* parent, int id, wxVtk3DBaseView* _baseView) + : wxPanel(parent, -1, wxDefaultPosition, wxDefaultSize) { _id = id; - volmanager = new wxMaracasMultipleVolumeRendererManager(); + baseView = _baseView; + dialog = NULL; + + volmanager = new VolumeRendererManager(); surrendmanager1 = new wxMaracasSurfaceRenderingManager(); surrendmanager2 = new wxMaracasSurfaceRenderingManager(); surrendmanager3 = new wxMaracasSurfaceRenderingManager(); @@ -36,8 +73,13 @@ wxMaracasRenderTabbedPanel::~wxMaracasRenderTabbedPanel() //wxMaracasRenderTabbedPanel::getInstance()->addRemoveActorSA(_propid, false); //wxMaracasRenderTabbedPanel::getInstance()->addRemoveActorSB(_propid, false); //wxMaracasRenderTabbedPanel::getInstance()->addRemoveActorSC(_propid, false); + addRemoveActorMPR(false); + if( vtkmpr3Ddataviewer ) { delete vtkmpr3Ddataviewer; } + if( mwxvtkmpr3Dview ) { delete mwxvtkmpr3Dview; } + this->deleteVolume(_id); - delete wxtabs; + delete dialog; + delete wxtabs; } /** @@ -47,26 +89,33 @@ void wxMaracasRenderTabbedPanel::createControls(vtkImageData* inImg, std::string { wxFlexGridSizer* sizerrenderprop = new wxFlexGridSizer(1); - wxFlexGridSizer* sizercheck = new wxFlexGridSizer(2); + wxFlexGridSizer* sizercheck = new wxFlexGridSizer(3); checkboxVol = new wxCheckBox(this,-1,wxString(_T("Volume Rendering"))); Connect(checkboxVol->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxVChange); - checkboxVol->SetValue(true); + checkboxVol->SetValue(false); sizercheck->Add(checkboxVol, wxFIXED_MINSIZE); checkboxSA = new wxCheckBox(this,-1,wxString(_T("Surface Rendering A"))); Connect(checkboxSA->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSAChange); - checkboxSA->SetValue(true); + checkboxSA->SetValue(false); sizercheck->Add(checkboxSA, wxFIXED_MINSIZE); + checkboxViewer = new wxCheckBox(this,-1,wxString(_T("MPR"))); + Connect(checkboxViewer->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onMPROptions); + checkboxViewer->SetValue(true); + sizercheck->Add(checkboxViewer, wxFIXED_MINSIZE); + checkboxSB = new wxCheckBox(this,-1,wxString(_T("Surface Rendering B"))); Connect(checkboxSB->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSBChange); - checkboxSB->SetValue(true); + checkboxSB->SetValue(false); sizercheck->Add(checkboxSB, wxFIXED_MINSIZE); checkboxSC = new wxCheckBox(this,-1,wxString(_T("Surface Rendering C"))); Connect(checkboxSC->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSCChange); - checkboxSC->SetValue(true); + checkboxSC->SetValue(false); sizercheck->Add(checkboxSC, wxFIXED_MINSIZE); + + sizercheck->Add(new wxStaticText(this, -1,_T("")), wxFIXED_MINSIZE); wxButton* _openParameters = new wxButton(this, -1, wxString(_T("Apply Transformation"))); Connect(_openParameters->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onOpenParameters); @@ -81,24 +130,23 @@ void wxMaracasRenderTabbedPanel::createControls(vtkImageData* inImg, std::string if(inImg == NULL) { - //std::string s = std::string(pathfile.mb_str()); vtkImageData* img = volmanager->getImageData(pathfile); - vtkImageData* img1 = surrendmanager1->getImageData(pathfile); - vtkImageData* img2 = surrendmanager2->getImageData(pathfile); - vtkImageData* img3 = surrendmanager3->getImageData(pathfile); - if(img!=NULL && img1!=NULL && img2!=NULL && img3!=NULL) + //vtkImageData* img1 = surrendmanager1->getImageData(pathfile); + //vtkImageData* img2 = surrendmanager2->getImageData(pathfile); + //vtkImageData* img3 = surrendmanager3->getImageData(pathfile); + if(img!=NULL /*&& img1!=NULL && img2!=NULL && img3!=NULL*/) { - //s = std::string(filename.mb_str()); - addVolume(img, filename); - addSurface1(img1, filename); - addSurface2(img2, filename); - addSurface3(img3, filename); + addVolume(img, filename); + addSurface1(img, filename); + addSurface2(img, filename); + addSurface3(img, filename); + addMPROptions(); + volname = crea::std2wx(filename); wxtabs->Refresh(); } } else { - //s = std::string(filename.mb_str()); addVolume(inImg, filename); addSurface1(inImg, filename); addSurface2(inImg, filename); @@ -137,6 +185,9 @@ void wxMaracasRenderTabbedPanel::addVolume(vtkImageData* img, std::string datana wxMaracasMultipleVolumeRendererPanel* controlpanV = new wxMaracasMultipleVolumeRendererPanel(wxtabs, _propidV, img, true); wxtabs->AddPage(controlpanV, _T("Vol Rendering"), true); controlpanV->updateVolume(); + wxtabs->GetPage(0)->Disable(); + + volmanager->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); } } catch(char* str) @@ -163,6 +214,9 @@ void wxMaracasRenderTabbedPanel::addSurface1(vtkImageData* img, std::string data int maxiso = surrendmanager1->getMaxIsoValue(_propidSA); ((wxMaracasSurfaceRenderingProp3DMHD*)controlpanSA)->createControls(maxiso); wxtabs->AddPage(controlpanSA, _T("SR A")); + wxtabs->GetPage(1)->Disable(); + + surrendmanager1->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); } } catch(char* str) @@ -188,6 +242,9 @@ void wxMaracasRenderTabbedPanel::addSurface2(vtkImageData* img, std::string data int maxiso = surrendmanager2->getMaxIsoValue(_propidSB); ((wxMaracasSurfaceRenderingProp3DMHD*)controlpanSB)->createControls(maxiso); wxtabs->AddPage(controlpanSB, _T("SR B")); + wxtabs->GetPage(2)->Disable(); + + surrendmanager2->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); } } @@ -215,6 +272,9 @@ void wxMaracasRenderTabbedPanel::addSurface3(vtkImageData* img, std::string data int maxiso = surrendmanager3->getMaxIsoValue(_propidSC); ((wxMaracasSurfaceRenderingProp3DMHD*)controlpanSC)->createControls(maxiso); wxtabs->AddPage(controlpanSC, _T("SR C")); + wxtabs->GetPage(3)->Disable(); + + surrendmanager3->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); } } catch(char* str) @@ -226,6 +286,110 @@ void wxMaracasRenderTabbedPanel::addSurface3(vtkImageData* img, std::string data } } +/** +** +**/ +void wxMaracasRenderTabbedPanel::addMPROptions() +{ + //Panel Construction + vtkMPRBaseData* mvtkmprbasedata = new vtkMPRBaseData(); + marImageData* marimagedata = new marImageData( getVolImage() ); + mvtkmprbasedata ->SetMarImageData(marimagedata); + + mwxvtkmpr3Dview = new wxVtkMPR3DView( baseView ); + + vtkmpr3Ddataviewer = new vtkMPR3DDataViewer(); + + wxPanel *panelControl = new wxPanel(wxtabs,-1); + controlPanelMPR3D = mwxvtkmpr3Dview->CreateControlPanel(panelControl, true); + + wxFlexGridSizer *sizerCtrol = new wxFlexGridSizer(1); + sizerCtrol ->Add(controlPanelMPR3D, 1, wxALL|wxEXPAND, 2); + + panelControl->SetAutoLayout(true); + panelControl->SetSizer(sizerCtrol); + panelControl->SetSize(400,350); + panelControl->Layout(); + + //Configure MPR + int x = 0,y = 0,z = 0; + int ext[6]; + ext[0] = 0; + ext[1] = 0; + ext[2] = 0; + ext[3] = 0; + ext[4] = 0; + ext[5] = 0; + + double org[3],spc[3]; + org[0] = 0; + org[1] = 0; + org[2] = 0; + spc[0] = 0; + spc[1] = 0; + spc[2] = 0; + + if (mvtkmprbasedata!=NULL) + { + mvtkmprbasedata->Configure(); + /*x = mvtkmprbasedata -> GetMaxPositionX()/2; + y = mvtkmprbasedata -> GetMaxPositionY()/2; + z = mvtkmprbasedata -> GetMaxPositionZ()/2; */ + + if(mvtkmprbasedata->GetImageData() != NULL) + { + mvtkmprbasedata->GetImageData()->GetExtent(ext); + mvtkmprbasedata->GetImageData()->GetOrigin(org); + mvtkmprbasedata->GetImageData()->GetSpacing(spc); + + x = (ext[0]+ext[1])/2; + y = (ext[2]+ext[3])/2; + z = (ext[4]+ext[5])/2; + + mvtkmprbasedata->SetX( x ); + mvtkmprbasedata->SetY( y ); + mvtkmprbasedata->SetZ( z ); + } + else + { + mvtkmprbasedata->SetX( 0 ); + mvtkmprbasedata->SetY( 0 ); + mvtkmprbasedata->SetZ( 0 ); + } + } + + if (baseView!=NULL) + { + baseView ->Configure(); + } + + if (vtkmpr3Ddataviewer !=NULL) + { + vtkmpr3Ddataviewer ->SetVtkMPRBaseData(mvtkmprbasedata); + vtkmpr3Ddataviewer ->Configure(); + } + if (mwxvtkmpr3Dview !=NULL) + { + mwxvtkmpr3Dview ->SetVtkMPR3DDataViewer(vtkmpr3Ddataviewer); + mwxvtkmpr3Dview ->Configure(); +//EED 27/05/2013 + mwxvtkmpr3Dview ->GetWxvtk3Dbaseview()->ResetCamera(ext ,spc); + vtkInteractorStyleBaseView* vtkInteractorBV = (vtkInteractorStyleBaseView*)mwxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetInteractorStyleBaseView(); + vtkInteractorBV->AddParentToReport(this); + } + + int id = 4; + wxtabs->AddPage(panelControl, _T("MPR")); + wxtabs->GetPage(id)->Enable(); + wxtabs->SetSelection(id); + + ((wxVtkMPR3DViewCntrlPanel*)controlPanelMPR3D)->SetVisibleZ(true); + ((wxVtkMPR3DViewCntrlPanel*)controlPanelMPR3D)->SetVisibleXYZ(true); + mwxvtkmpr3Dview->showOutlineActor(true); + mwxvtkmpr3Dview->Refresh(); + +} + /** ** Deletes complete volume **/ @@ -254,6 +418,7 @@ void wxMaracasRenderTabbedPanel::addRemoveActorV(int id, bool addremove) { try{ volmanager->addRemoveActor(id, addremove); + } catch(char* str){ std::cout << "Exception : " << str << '\n'; @@ -309,7 +474,50 @@ void wxMaracasRenderTabbedPanel::addRemoveActorSC(int id, bool addremove) diag->ShowModal(); delete diag; } -} +} + +void wxMaracasRenderTabbedPanel::addRemoveActorMPR(bool addremove) +{ + int id = 4; + wxtabs->SetSelection(id); + if(addremove) + { + wxtabs->GetPage(id)->Enable(); + + bool valueX = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleX(); + bool valueY = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleY(); + bool valueZ = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleZ(); + bool valueXYZ = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleXYZ(); + bool valuePlane = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisiblePlane(); + + mwxvtkmpr3Dview->VisibleImageActor( 0, valueX ); + mwxvtkmpr3Dview->VisibleImageActor( 1, valueY ); + mwxvtkmpr3Dview->VisibleImageActor( 2, valueZ ); + mwxvtkmpr3Dview->VisiblePointWidget(valueXYZ); + mwxvtkmpr3Dview->VisiblePlaneWidget(valuePlane); + mwxvtkmpr3Dview->showOutlineActor(true); + + mwxvtkmpr3Dview->Refresh(); + + + } + else + { + wxtabs->GetPage(id)->Disable(); + + mwxvtkmpr3Dview->VisiblePointWidget(false); + mwxvtkmpr3Dview->VisiblePlaneWidget(false); + mwxvtkmpr3Dview->VisibleImageActor(0, false ); + mwxvtkmpr3Dview->VisibleImageActor(1, false ); + mwxvtkmpr3Dview->VisibleImageActor(2, false ); + mwxvtkmpr3Dview->showOutlineActor(false); + mwxvtkmpr3Dview->Refresh(); + + wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh + mwxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1); + } +} + /** ** Sets color points values for the given volume rendering identified by parameter: volumeid @@ -334,7 +542,6 @@ void wxMaracasRenderTabbedPanel::SetValuesPointsFunction(int volid, std::vector< diag->ShowModal(); delete diag; } - } /** @@ -461,7 +668,19 @@ void wxMaracasRenderTabbedPanel::changeColorC(int propid, double red, double gre void wxMaracasRenderTabbedPanel::onCheckBoxVChange(wxCommandEvent& event) { try{ - volmanager->addRemoveActor(this->getPropIdV(), checkboxVol->GetValue()); + volmanager->addRemoveActor(this->getPropIdV(), checkboxVol->GetValue()); + + int id = 0; + wxtabs->SetSelection(id); + + if(checkboxVol->GetValue()) + { + wxtabs->GetPage(id)->Enable(); + } + else + { + wxtabs->GetPage(id)->Disable(); + } } catch(char* str){ std::cout << "Exception : " << str << '\n'; @@ -478,6 +697,19 @@ void wxMaracasRenderTabbedPanel::onCheckBoxSAChange(wxCommandEvent& event) { try{ surrendmanager1->addRemoveActor(this->getPropIdV(), checkboxSA->GetValue()); + + int id = 1; + wxtabs->SetSelection(id); + + if(checkboxSA->GetValue()) + { + wxtabs->GetPage(id)->Enable(); + + } + else + { + wxtabs->GetPage(id)->Disable(); + } } catch(char* str){ std::cout << "Exception : " << str << '\n'; @@ -494,6 +726,18 @@ void wxMaracasRenderTabbedPanel::onCheckBoxSBChange(wxCommandEvent& event) { try{ surrendmanager2->addRemoveActor(this->getPropIdV(), checkboxSB->GetValue()); + + int id = 2; + wxtabs->SetSelection(id); + + if(checkboxSB->GetValue()) + { + wxtabs->GetPage(id)->Enable(); + } + else + { + wxtabs->GetPage(id)->Disable(); + } } catch(char* str){ std::cout << "Exception : " << str << '\n'; @@ -509,7 +753,19 @@ void wxMaracasRenderTabbedPanel::onCheckBoxSBChange(wxCommandEvent& event) void wxMaracasRenderTabbedPanel::onCheckBoxSCChange(wxCommandEvent& event) { try{ - surrendmanager3->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); + surrendmanager3->addRemoveActor(this->getPropIdV(), checkboxSC->GetValue()); + + int id = 3; + wxtabs->SetSelection(id); + + if(checkboxSC->GetValue()) + { + wxtabs->GetPage(id)->Enable(); + } + else + { + wxtabs->GetPage(id)->Disable(); + } } catch(char* str){ std::cout << "Exception : " << str << '\n'; @@ -520,15 +776,102 @@ void wxMaracasRenderTabbedPanel::onCheckBoxSCChange(wxCommandEvent& event) } /** -** +** Method called when MPR checkbox status changes: Either shows or hides actors +**/ +void wxMaracasRenderTabbedPanel::onMPROptions(wxCommandEvent& event) +{ + addRemoveActorMPR(checkboxViewer->IsChecked()); + /* + int id = 4; + wxtabs->SetSelection(id); + if(checkboxViewer->IsChecked()) + { + + wxtabs->GetPage(id)->Enable(); + + bool valueX = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleX(); + bool valueY = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleY(); + bool valueZ = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleZ(); + bool valueXYZ = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisibleXYZ(); + bool valuePlane = ((wxVtkMPR3DViewCntrlPanel*) controlPanelMPR3D)->GetVisiblePlane(); + + mwxvtkmpr3Dview->VisibleImageActor( 0, valueX ); + mwxvtkmpr3Dview->VisibleImageActor( 1, valueY ); + mwxvtkmpr3Dview->VisibleImageActor( 2, valueZ ); + mwxvtkmpr3Dview->VisiblePointWidget(valueXYZ); + mwxvtkmpr3Dview->VisiblePlaneWidget(valuePlane); + mwxvtkmpr3Dview->showOutlineActor(true); + + mwxvtkmpr3Dview->Refresh(); + + + } + else + { + wxtabs->GetPage(id)->Disable(); + + mwxvtkmpr3Dview->VisiblePointWidget(false); + mwxvtkmpr3Dview->VisiblePlaneWidget(false); + mwxvtkmpr3Dview->VisibleImageActor(0, false ); + mwxvtkmpr3Dview->VisibleImageActor(1, false ); + mwxvtkmpr3Dview->VisibleImageActor(2, false ); + mwxvtkmpr3Dview->showOutlineActor(false); + mwxvtkmpr3Dview->Refresh(); + + wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh + mwxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1); + }*/ +} + +void wxMaracasRenderTabbedPanel::OnRefreshView(wxCommandEvent & event) +{ + printf("CPR wxMaracasRenderTabbedPanel::OnRefreshView \n"); + mwxvtkmpr3Dview->RefreshView(); + + wxCommandEvent newevent1(wxEVT_COMMAND_MENU_SELECTED,12121); // Refresh + mwxvtkmpr3Dview->GetWxvtk3Dbaseview()->GetWxVTKRenderWindowInteractor()->GetParent()->ProcessEvent(newevent1); +} + +/** +** **/ void wxMaracasRenderTabbedPanel::onOpenParameters(wxCommandEvent& event){ - - dialog = new wxMaracasRenderImageManagementPanel(this, volmanager, surrendmanager1, surrendmanager2, surrendmanager3, this->getPropIdV()); - dialog->SetSize(400, 580); - dialog->Show(); + if(dialog == NULL) + { + dialog = new wxMaracasRenderImageManagementPanel(this, volmanager, surrendmanager1, surrendmanager2, surrendmanager3, volname, _id); + dialog->SetSize(460, 580); + dialog->Show(); + } + else if(dialog != NULL) + { + dialog->Show(); + } } +/** +** +**/ +void wxMaracasRenderTabbedPanel::onOpenCutter(wxCommandEvent& event) +{ + vtkImageData* img = getVolImage(); + std::vector type; + type.push_back(5); + type.push_back(1); + type.push_back(2); + type.push_back(0); + + wxMaracasDialog_NViewers* dialog1 = new wxMaracasDialog_NViewers(this, img, &type, wxString(_T("Cut Module") )); + //dialog1->SetSize(800, 700); + + /**std::string path = crea::System::GetDllAppPath("bbcreaMaracasVisu.dll"); + cutter = CutModelMainPanel::getInstance(dialog1->getinternalPanel(), path); + cutter->setRenderer( dialog1->getViewer()->GetwxVtkBaseView(1)->GetRenderer() ); + cutter->setInteractor( dialog1->getViewer()->GetwxVtkBaseView(1)->GetWxVTKRenderWindowInteractor() ); + cutter->setImageData(getVolImage()); + **/ + //dialog1->AddPanel(cutter); + dialog1->Show(); +} /** ** Gets volume rendering image asociated to the given ID @@ -546,7 +889,7 @@ void wxMaracasRenderTabbedPanel::onColorChange(wxCommandEvent& event) /** ** **/ -vtkImageData* wxMaracasRenderTabbedPanel::getVolImage(int id) +vtkImageData* wxMaracasRenderTabbedPanel::getVolImage() { return volmanager->getImageData(); } @@ -554,7 +897,7 @@ vtkImageData* wxMaracasRenderTabbedPanel::getVolImage(int id) /** ** Gets surface rendering A image asociated to the given ID **/ -vtkImageData* wxMaracasRenderTabbedPanel::getSurfAImage(int id) +vtkImageData* wxMaracasRenderTabbedPanel::getSurfAImage() { return surrendmanager1->getImageData(); } @@ -562,7 +905,7 @@ vtkImageData* wxMaracasRenderTabbedPanel::getSurfAImage(int id) /** ** Gets surface rendering B image asociated to the given ID **/ -vtkImageData* wxMaracasRenderTabbedPanel::getSurfBImage(int id) +vtkImageData* wxMaracasRenderTabbedPanel::getSurfBImage() { return surrendmanager2->getImageData(); } @@ -570,19 +913,11 @@ vtkImageData* wxMaracasRenderTabbedPanel::getSurfBImage(int id) /** ** Gets surface rendering C image asociated to the given ID **/ -vtkImageData* wxMaracasRenderTabbedPanel::getSurfCImage(int id) +vtkImageData* wxMaracasRenderTabbedPanel::getSurfCImage() { return surrendmanager3->getImageData(); } -/** -** -**/ -void wxMaracasRenderTabbedPanel::onOpenCutter(wxCommandEvent& event) -{ - -} - /** ** **/ @@ -590,27 +925,3 @@ int wxMaracasRenderTabbedPanel::getPropIdV() { return _id; } - -/** -** -**/ -int wxMaracasRenderTabbedPanel::getPropIdSA() -{ - return -1; -} - -/** -** -**/ -int wxMaracasRenderTabbedPanel::getPropIdSB() -{ - return -1; -} - -/** -** -**/ -int wxMaracasRenderTabbedPanel::getPropIdSC() -{ - return -1; -} \ No newline at end of file