wxMaracasRenderImageManagementPanel.cpp

Go to the documentation of this file.
00001 #include "wxMaracasRenderImageManagementPanel.h"
00002 
00003 
00004 #include <vtkVolume.h>
00005 
00009 wxMaracasRenderImageManagementPanel::wxMaracasRenderImageManagementPanel(wxWindow* parent, wxMaracasMultipleVolumeRendererManager* _vol, wxMaracasSurfaceRenderingManager* _surface1, 
00010                                                                                                                                                  wxMaracasSurfaceRenderingManager* _surface2, wxMaracasSurfaceRenderingManager* _surface3, wxString title, int id)
00011 : wxDialog(parent, -1, title, wxDefaultPosition, wxDefaultSize, wxRESIZE_BORDER|wxDEFAULT_DIALOG_STYLE)
00012 {
00013         wxtrasform = new wxMaracasRenderImageTransformation(_vol, _surface1, _surface2, _surface3, id);
00014         createControls();
00015 }
00016 
00020 void wxMaracasRenderImageManagementPanel::createControls()
00021 {
00022         wxFlexGridSizer* sizersliders = new wxFlexGridSizer(1);
00023         
00024         wxStaticText* tx = new wxStaticText(this, -1, wxString(_T("  Translate X  ")));
00025         sliderTranslateX = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00026         sliderTranslateX->SetLineSize(1);
00027         Connect(sliderTranslateX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00028         sizersliders->Add(tx, wxFIXED_MINSIZE);
00029         sizersliders->Add(sliderTranslateX, 1, wxALL|wxEXPAND, 2);
00030 
00031         wxStaticText* ty = new wxStaticText(this, -1, wxString(_T("  Translate Y  ")));
00032         sliderTranslateY = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00033         sliderTranslateY->SetLineSize(1);
00034         Connect(sliderTranslateY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00035         sizersliders->Add(ty, wxFIXED_MINSIZE);
00036         sizersliders->Add(sliderTranslateY, 1, wxALL|wxEXPAND, 2);
00037 
00038         wxStaticText* tz = new wxStaticText(this, -1, wxString(_T("  Translate Z  ")));
00039         sliderTranslateZ = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00040         sliderTranslateZ->SetLineSize(1);
00041         Connect(sliderTranslateZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00042         sizersliders->Add(tz, wxFIXED_MINSIZE);
00043         sizersliders->Add(sliderTranslateZ,wxSizerFlags().Expand().Center());
00044 
00045         wxStaticText* rx = new wxStaticText(this, -1, wxString(_T("  Rotate X  ")));
00046         sliderRotateX = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00047         sliderRotateX->SetLineSize(1);
00048         Connect(sliderRotateX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00049         sizersliders->Add(rx, wxFIXED_MINSIZE);
00050         sizersliders->Add(sliderRotateX,wxSizerFlags().Expand().Center());
00051 
00052         wxStaticText* ry = new wxStaticText(this, -1, wxString(_T("  Rotate Y  ")));
00053         sliderRotateY = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00054         sliderRotateY->SetLineSize(1);
00055         Connect(sliderRotateY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00056         sizersliders->Add(ry, wxFIXED_MINSIZE);
00057         sizersliders->Add(sliderRotateY,wxSizerFlags().Expand().Center());
00058 
00059         wxStaticText* rz = new wxStaticText(this, -1, wxString(_T("  Rotate Z  ")));
00060         sliderRotateZ = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00061         sliderRotateZ->SetLineSize(1);
00062         Connect(sliderRotateZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00063         sizersliders->Add(rz, wxFIXED_MINSIZE);
00064         sizersliders->Add(sliderRotateZ,wxSizerFlags().Expand().Center());
00065 
00066         wxStaticText* sx = new wxStaticText(this, -1, wxString(_T("  Scale X  ")));
00067         sliderScaleX = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00068         sliderScaleX->SetLineSize(1);
00069         Connect(sliderScaleX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00070         sizersliders->Add(sx, wxFIXED_MINSIZE);
00071         sizersliders->Add(sliderScaleX,wxSizerFlags().Expand().Center());
00072 
00073         wxStaticText* sy = new wxStaticText(this, -1, wxString(_T("  Scale Y  ")));
00074         sliderScaleY = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
00075         sliderScaleY->SetLineSize(1);
00076         Connect(sliderScaleY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00077         sizersliders->Add(sy, wxFIXED_MINSIZE);
00078         sizersliders->Add(sliderScaleY,wxSizerFlags().Expand().Center());
00079 
00080         wxStaticText* sz = new wxStaticText(this, -1, wxString(_T("  Scale Z  ")));
00081         sliderScaleZ = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, this->GetSize(), wxSL_LABELS);
00082         sliderScaleZ->SetLineSize(1);
00083         Connect(sliderScaleZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
00084         sizersliders->Add(sz, wxFIXED_MINSIZE);
00085         sizersliders->Add(sliderScaleZ,wxSizerFlags().Expand().Center());
00086         
00087         //ATENTION!! A SUPRIMER LES LIGNES ON BAS SI ELES NE SONT PAS NECESSAIRES!!
00088         
00089         /*
00090         //wxString choices[2];
00091         //choices[0] = wxString(_T("On"));
00092         //choices[1] = wxString(_T("Off"));
00093         checkboxSA = new  wxCheckBox(this,-1,wxString(_T("Surface Rendering A")));
00094         Connect(checkboxSA->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSAChange);   
00095         checkboxSA->SetValue(true);     
00096 
00097         sizercheck->Add(checkboxSA, wxFIXED_MINSIZE);
00098 
00099         //wxString choices[2];
00100         //choices[0] = wxString(_T("On"));
00101         //choices[1] = wxString(_T("Off"));
00102         checkboxSB = new  wxCheckBox(this,-1,wxString(_T("Surface Rendering B")));
00103         Connect(checkboxSB->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSBChange);   
00104         checkboxSB->SetValue(true);     
00105 
00106         sizercheck->Add(checkboxSB, wxFIXED_MINSIZE);
00107 
00108         //wxString choices[2];
00109         //choices[0] = wxString(_T("On"));
00110         //choices[1] = wxString(_T("Off"));
00111         checkboxSC = new  wxCheckBox(this,-1,wxString(_T("Surface Rendering C")));
00112         Connect(checkboxSC->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSCChange);   
00113         checkboxSC->SetValue(true);     
00114 
00115         sizercheck->Add(checkboxSC, wxFIXED_MINSIZE);
00116         sizerrenderprop->Add(sizercheck, wxFIXED_MINSIZE);*/
00117 
00118         this->SetSizer(sizersliders, true);             
00119         this->SetAutoLayout(true);
00120 }
00121 
00125 wxMaracasRenderImageManagementPanel::~wxMaracasRenderImageManagementPanel()
00126 {       
00127 }
00128 
00132 void wxMaracasRenderImageManagementPanel::Transform(wxCommandEvent& event)
00133 {
00134         //printf("wxMaracasRenderImageManagementPanel::Translate translateX = %d \n", sliderTranslateX->GetValue());
00135         //printf("wxMaracasRenderImageManagementPanel::Translate translatey = %d \n", sliderTranslateY->GetValue());
00136         //printf("wxMaracasRenderImageManagementPanel::Translate translatez = %d \n", sliderTranslateZ->GetValue());
00137         try{
00138                 wxtrasform->Translate( sliderTranslateX->GetValue(), sliderTranslateY->GetValue(), sliderTranslateZ->GetValue(), 
00139                         sliderRotateX->GetValue(), sliderRotateY->GetValue(), sliderRotateZ->GetValue(), 
00140                         sliderScaleX->GetValue(), sliderScaleY->GetValue(), sliderScaleZ->GetValue() );
00141         }
00142         catch(char* str){
00143                 std::cout << "Exception : " << str << '\n';
00144                 wxMessageDialog* diag = new wxMessageDialog(this, wxString(str,wxConvUTF8 ), wxString(str,wxConvUTF8 ), wxICON_ERROR);
00145                 diag->ShowModal();
00146         }
00147 }

Generated on 18 Mar 2010 for creaMaracasVisu_lib by  doxygen 1.6.1