X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FwxMaracasMultipleVolumeRendererPanel.cxx;h=6c7d66f4d19db194a4bbc621b2c8a398b0fe122e;hb=d2fc2645728a4aea4f0aa0febfa1d7a894ab3ff1;hp=f1fa7e1b8a25e3f55dbf73c78e0dac07c6872b27;hpb=28c74ab5eb531ce001260e9bc3fcb0151fcfc56b;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasMultipleVolumeRendererPanel.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasMultipleVolumeRendererPanel.cxx index f1fa7e1..6c7d66f 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasMultipleVolumeRendererPanel.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/wxMaracasMultipleVolumeRendererPanel.cxx @@ -1,8 +1,13 @@ #include "wxMaracasMultipleVolumeRendererPanel.h" - -#include #include "wxMaracasMultipleVolumeRendererView.h" +#include "wxMaracasDialog_NViewers.h" #include "wxMaracasRendererView.h" + +#include + +#include "vtkImageData.h" +#include "vtkRenderer.h" + #include #include #include "Color.xpm" @@ -44,18 +49,22 @@ void wxMaracasMultipleVolumeRendererPanel::createControls(vtkImageData* img){ if(!isComplexBox) { - //wxString choices[2]; - //choices[0] = wxString(_T("On")); - //choices[1] = wxString(_T("Off")); wxStaticText* label = new wxStaticText(this, -1, wxString(_T(""))); wxStaticText* label2 = new wxStaticText(this, -1, wxString(_T(""))); + + checkbox = new wxCheckBox(this,-1,wxString(_T("Show Actor"))); Connect(checkbox->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasMultipleVolumeRendererPanel::onCheckBoxChange); checkbox->SetValue(true); + wxString choices[] = {_T("Composite"), _T("MIP")}; + _radiobox = new wxRadioBox(this, -1, wxString(_T("Function")), wxDefaultPosition, wxDefaultSize, 2, choices); + Connect(_radiobox->GetId(), wxEVT_COMMAND_RADIOBOX_SELECTED, (wxObjectEventFunction)&wxMaracasMultipleVolumeRendererPanel::onRadioBoxSelectFunction); + sizerirmprop->Add(checkbox,wxFIXED_MINSIZE); - sizerirmprop->Add(label,wxFIXED_MINSIZE); - sizerirmprop->Add(label2,wxFIXED_MINSIZE); + sizerirmprop->AddSpacer(5); + sizerirmprop->Add(_radiobox,wxFIXED_MINSIZE); + //sizerirmprop->Add(label2,wxFIXED_MINSIZE); } //wxBitmap bitmap(Color_xpm); //_colorchoose = new wxBitmapButton(this, -1, bitmap,wxDefaultPosition,wxSize(30,30)); @@ -72,10 +81,6 @@ void wxMaracasMultipleVolumeRendererPanel::createControls(vtkImageData* img){ Connect(_viewimage->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasMultipleVolumeRendererPanel::onViewImage); sizerirmprop->Add(_viewimage,wxFIXED_MINSIZE); - wxBitmap bitmap1(OpenImage_xpm); - wxBitmapButton* _openParameters = new wxBitmapButton(this, -1, bitmap1, wxDefaultPosition, wxSize(30,30)); - Connect(_openParameters->GetId(), wxEVT_COMMAND_BUTTON_CLICKED, (wxObjectEventFunction)&wxMaracasMultipleVolumeRendererPanel::onOpenParameters); - sizerirmprop->Add(_openParameters,wxFIXED_MINSIZE); //std::string iconsdir = wxMaracasMultipleVolumeRendererView::getInstance()->getPath(); //iconsdir+="/data/Icons/Add.xmp"; //wxBitmap* bitmap = new wxBitmap(wxString(iconsdir.c_str(),wxConvUTF8), wxBITMAP_TYPE_XPM); @@ -175,8 +180,8 @@ void wxMaracasMultipleVolumeRendererPanel::updateVolume(){ if(this->isComplexBox) { - ((wxMaracasRenderTabbedPanel*)(wxMaracasRendererView::getInstance())->getTabbedPanel())->SetValuesColorPointsFunction(this->_propid,greylevelcolors, red, green, blue); - ((wxMaracasRenderTabbedPanel*)(wxMaracasRendererView::getInstance())->getTabbedPanel())->SetValuesPointsFunction(this->_propid, greylevel, values); + ( (wxMaracasRendererView::getInstance())->getTabbedPanel(this->_propid) )->SetValuesColorPointsFunction(this->_propid,greylevelcolors, red, green, blue); + ( (wxMaracasRendererView::getInstance())->getTabbedPanel(this->_propid) )->SetValuesPointsFunction(this->_propid, greylevel, values); } else { @@ -199,17 +204,21 @@ void wxMaracasMultipleVolumeRendererPanel::onColorChange(wxCommandEvent& event){ /** ** **/ -void wxMaracasMultipleVolumeRendererPanel::onViewImage(wxCommandEvent& event){ - -} - -/** -** -**/ -void wxMaracasMultipleVolumeRendererPanel::onOpenParameters(wxCommandEvent& event){ - dialog = new wxMaracasRenderImageManagementPanel(this); - dialog->SetSize(400,580); - dialog->Show(); +void wxMaracasMultipleVolumeRendererPanel::onViewImage(wxCommandEvent& event) +{ + vtkImageData* img; + if(this->isComplexBox){ + img = (wxMaracasRendererView::getInstance())->getTabbedPanel(_propid)->getVolImage(); + std::vector type; + type.push_back(6); + + wxMaracasDialog_NViewers* dialog1 = new wxMaracasDialog_NViewers(this, img, &type, wxString(_T("Volume Visualization") )); + dialog1->SetSize(wxDefaultSize); + dialog1->Show(); + } + else{ + //vtkImageData* img = wxMaracasMultipleVolumeRendererView::getInstance()->getVolImage(); + } } /** @@ -217,7 +226,7 @@ void wxMaracasMultipleVolumeRendererPanel::onOpenParameters(wxCommandEvent& even **/ void wxMaracasMultipleVolumeRendererPanel::onCheckBoxChange(wxCommandEvent& event){ if(this->isComplexBox) - ((wxMaracasRenderTabbedPanel*)(wxMaracasRendererView::getInstance())->getTabbedPanel())->addRemoveActorV(this->getPropId(), checkbox->GetValue()); + ( (wxMaracasRendererView::getInstance())->getTabbedPanel(this->_propid) )->addRemoveActorV(this->getPropId(), checkbox->GetValue()); else wxMaracasMultipleVolumeRendererView::getInstance()->addRemoveActor(this->getPropId(), checkbox->GetValue()); } @@ -229,10 +238,16 @@ int wxMaracasMultipleVolumeRendererPanel::getPropId(){ return _propid; } +void wxMaracasMultipleVolumeRendererPanel::onRadioBoxSelectFunction(wxCommandEvent& event){ + + wxMaracasMultipleVolumeRendererView::getInstance()->changeCompositeMIPFunction(this->getPropId(), _radiobox->GetSelection()); +} + /** ** Carolina Perez: Recently added method **/ HistogramDialogComboBox* wxMaracasMultipleVolumeRendererPanel::getMwxwidget() { return mwxwidget; -} \ No newline at end of file +} +