1 #include "wxMaracasRenderImageManagementPanel.h"
9 wxMaracasRenderImageManagementPanel::wxMaracasRenderImageManagementPanel(wxWindow* parent, VolumeRendererManager* _vol, wxMaracasSurfaceRenderingManager* _surface1,
10 wxMaracasSurfaceRenderingManager* _surface2, wxMaracasSurfaceRenderingManager* _surface3, wxString title, int id)
11 : wxDialog(parent, -1, title, wxDefaultPosition, wxDefaultSize, wxRESIZE_BORDER|wxDEFAULT_DIALOG_STYLE)
13 wxtrasform = new wxMaracasRenderImageTransformation(_vol, _surface1, _surface2, _surface3, id);
20 void wxMaracasRenderImageManagementPanel::createControls()
22 wxFlexGridSizer* sizersliders = new wxFlexGridSizer(1);
24 wxStaticText* tx = new wxStaticText(this, -1, wxString(_T(" Translate X ")));
25 sliderTranslateX = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
26 sliderTranslateX->SetLineSize(1);
27 Connect(sliderTranslateX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
28 sizersliders->Add(tx, wxFIXED_MINSIZE);
29 sizersliders->Add(sliderTranslateX, 1, wxALL|wxEXPAND, 2);
31 wxStaticText* ty = new wxStaticText(this, -1, wxString(_T(" Translate Y ")));
32 sliderTranslateY = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
33 sliderTranslateY->SetLineSize(1);
34 Connect(sliderTranslateY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
35 sizersliders->Add(ty, wxFIXED_MINSIZE);
36 sizersliders->Add(sliderTranslateY, 1, wxALL|wxEXPAND, 2);
38 wxStaticText* tz = new wxStaticText(this, -1, wxString(_T(" Translate Z ")));
39 sliderTranslateZ = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
40 sliderTranslateZ->SetLineSize(1);
41 Connect(sliderTranslateZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
42 sizersliders->Add(tz, wxFIXED_MINSIZE);
43 sizersliders->Add(sliderTranslateZ,wxSizerFlags().Expand().Center());
45 wxStaticText* rx = new wxStaticText(this, -1, wxString(_T(" Rotate X ")));
46 sliderRotateX = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
47 sliderRotateX->SetLineSize(1);
48 Connect(sliderRotateX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
49 sizersliders->Add(rx, wxFIXED_MINSIZE);
50 sizersliders->Add(sliderRotateX,wxSizerFlags().Expand().Center());
52 wxStaticText* ry = new wxStaticText(this, -1, wxString(_T(" Rotate Y ")));
53 sliderRotateY = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
54 sliderRotateY->SetLineSize(1);
55 Connect(sliderRotateY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
56 sizersliders->Add(ry, wxFIXED_MINSIZE);
57 sizersliders->Add(sliderRotateY,wxSizerFlags().Expand().Center());
59 wxStaticText* rz = new wxStaticText(this, -1, wxString(_T(" Rotate Z ")));
60 sliderRotateZ = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
61 sliderRotateZ->SetLineSize(1);
62 Connect(sliderRotateZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
63 sizersliders->Add(rz, wxFIXED_MINSIZE);
64 sizersliders->Add(sliderRotateZ,wxSizerFlags().Expand().Center());
66 wxStaticText* sx = new wxStaticText(this, -1, wxString(_T(" Scale X ")));
67 sliderScaleX = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
68 sliderScaleX->SetLineSize(1);
69 Connect(sliderScaleX->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
70 sizersliders->Add(sx, wxFIXED_MINSIZE);
71 sizersliders->Add(sliderScaleX,wxSizerFlags().Expand().Center());
73 wxStaticText* sy = new wxStaticText(this, -1, wxString(_T(" Scale Y ")));
74 sliderScaleY = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
75 sliderScaleY->SetLineSize(1);
76 Connect(sliderScaleY->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
77 sizersliders->Add(sy, wxFIXED_MINSIZE);
78 sizersliders->Add(sliderScaleY,wxSizerFlags().Expand().Center());
80 wxStaticText* sz = new wxStaticText(this, -1, wxString(_T(" Scale Z ")));
81 sliderScaleZ = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, this->GetSize(), wxSL_LABELS);
82 sliderScaleZ->SetLineSize(1);
83 Connect(sliderScaleZ->GetId(), wxEVT_COMMAND_SLIDER_UPDATED, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
84 sizersliders->Add(sz, wxFIXED_MINSIZE);
85 sizersliders->Add(sliderScaleZ,wxSizerFlags().Expand().Center());
87 //ATENTION!! A SUPRIMER LES LIGNES ON BAS SI ELES NE SONT PAS NECESSAIRES!!
90 //wxString choices[2];
91 //choices[0] = wxString(_T("On"));
92 //choices[1] = wxString(_T("Off"));
93 checkboxSA = new wxCheckBox(this,-1,wxString(_T("Surface Rendering A")));
94 Connect(checkboxSA->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSAChange);
95 checkboxSA->SetValue(true);
97 sizercheck->Add(checkboxSA, wxFIXED_MINSIZE);
99 //wxString choices[2];
100 //choices[0] = wxString(_T("On"));
101 //choices[1] = wxString(_T("Off"));
102 checkboxSB = new wxCheckBox(this,-1,wxString(_T("Surface Rendering B")));
103 Connect(checkboxSB->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSBChange);
104 checkboxSB->SetValue(true);
106 sizercheck->Add(checkboxSB, wxFIXED_MINSIZE);
108 //wxString choices[2];
109 //choices[0] = wxString(_T("On"));
110 //choices[1] = wxString(_T("Off"));
111 checkboxSC = new wxCheckBox(this,-1,wxString(_T("Surface Rendering C")));
112 Connect(checkboxSC->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSCChange);
113 checkboxSC->SetValue(true);
115 sizercheck->Add(checkboxSC, wxFIXED_MINSIZE);
116 sizerrenderprop->Add(sizercheck, wxFIXED_MINSIZE);*/
118 this->SetSizer(sizersliders, true);
119 this->SetAutoLayout(true);
125 wxMaracasRenderImageManagementPanel::~wxMaracasRenderImageManagementPanel()
130 ** Transforms a volume by the given value for the X axis
132 void wxMaracasRenderImageManagementPanel::Transform(wxCommandEvent& event)
134 //printf("wxMaracasRenderImageManagementPanel::Translate translateX = %d \n", sliderTranslateX->GetValue());
135 //printf("wxMaracasRenderImageManagementPanel::Translate translatey = %d \n", sliderTranslateY->GetValue());
136 //printf("wxMaracasRenderImageManagementPanel::Translate translatez = %d \n", sliderTranslateZ->GetValue());
138 wxtrasform->Translate( sliderTranslateX->GetValue(), sliderTranslateY->GetValue(), sliderTranslateZ->GetValue(),
139 sliderRotateX->GetValue(), sliderRotateY->GetValue(), sliderRotateZ->GetValue(),
140 sliderScaleX->GetValue(), sliderScaleY->GetValue(), sliderScaleZ->GetValue() );
143 std::cout << "Exception : " << str << '\n';
144 wxMessageDialog* diag = new wxMessageDialog(this, wxString(str,wxConvUTF8 ), wxString(str,wxConvUTF8 ), wxICON_ERROR);