1 #include "wxMaracasRenderImageManagementPanel.h"
8 wxMaracasRenderImageManagementPanel::wxMaracasRenderImageManagementPanel(wxWindow* parent, wxMaracasMultipleVolumeRendererManager* _vol, wxMaracasSurfaceRenderingManager* _surface1,
9 wxMaracasSurfaceRenderingManager* _surface2, wxMaracasSurfaceRenderingManager* _surface3, wxString title, int id)
10 : wxDialog(parent, -1, title, wxDefaultPosition, wxDefaultSize, wxRESIZE_BORDER|wxDEFAULT_DIALOG_STYLE)
12 wxtrasform = new wxMaracasRenderImageTransformation(_vol, _surface1, _surface2, _surface3, id);
19 void wxMaracasRenderImageManagementPanel::createControls()
21 wxFlexGridSizer* sizersliders = new wxFlexGridSizer(1);
23 wxStaticText* tx = new wxStaticText(this, -1, wxString(_T(" Translate X ")));
24 sliderTranslateX = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
25 sliderTranslateX->SetLineSize(1);
26 Connect(sliderTranslateX->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
27 sizersliders->Add(tx, wxFIXED_MINSIZE);
28 sizersliders->Add(sliderTranslateX,wxSizerFlags().Expand().Center());
30 wxStaticText* ty = new wxStaticText(this, -1, wxString(_T(" Translate Y ")));
31 sliderTranslateY = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
32 sliderTranslateY->SetLineSize(1);
33 Connect(sliderTranslateY->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
34 sizersliders->Add(ty, wxFIXED_MINSIZE);
35 sizersliders->Add(sliderTranslateY,wxSizerFlags().Expand().Center());
37 wxStaticText* tz = new wxStaticText(this, -1, wxString(_T(" Translate Z ")));
38 sliderTranslateZ = new wxSlider(this, -1, 0, -200, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
39 sliderTranslateZ->SetLineSize(1);
40 Connect(sliderTranslateZ->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
41 sizersliders->Add(tz, wxFIXED_MINSIZE);
42 sizersliders->Add(sliderTranslateZ,wxSizerFlags().Expand().Center());
44 wxStaticText* rx = new wxStaticText(this, -1, wxString(_T(" Rotate X ")));
45 sliderRotateX = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
46 sliderRotateX->SetLineSize(1);
47 Connect(sliderRotateX->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
48 sizersliders->Add(rx, wxFIXED_MINSIZE);
49 sizersliders->Add(sliderRotateX,wxSizerFlags().Expand().Center());
51 wxStaticText* ry = new wxStaticText(this, -1, wxString(_T(" Rotate Y ")));
52 sliderRotateY = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
53 sliderRotateY->SetLineSize(1);
54 Connect(sliderRotateY->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
55 sizersliders->Add(ry, wxFIXED_MINSIZE);
56 sizersliders->Add(sliderRotateY,wxSizerFlags().Expand().Center());
58 wxStaticText* rz = new wxStaticText(this, -1, wxString(_T(" Rotate Z ")));
59 sliderRotateZ = new wxSlider(this, -1, 0, -360, 360, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
60 sliderRotateZ->SetLineSize(1);
61 Connect(sliderRotateZ->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
62 sizersliders->Add(rz, wxFIXED_MINSIZE);
63 sizersliders->Add(sliderRotateZ,wxSizerFlags().Expand().Center());
65 wxStaticText* sx = new wxStaticText(this, -1, wxString(_T(" Scale X ")));
66 sliderScaleX = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
67 sliderScaleX->SetLineSize(1);
68 Connect(sliderScaleX->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
69 sizersliders->Add(sx, wxFIXED_MINSIZE);
70 sizersliders->Add(sliderScaleX,wxSizerFlags().Expand().Center());
72 wxStaticText* sy = new wxStaticText(this, -1, wxString(_T(" Scale Y ")));
73 sliderScaleY = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, wxDefaultSize, wxSL_LABELS);
74 sliderScaleY->SetLineSize(1);
75 Connect(sliderScaleY->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
76 sizersliders->Add(sy, wxFIXED_MINSIZE);
77 sizersliders->Add(sliderScaleY,wxSizerFlags().Expand().Center());
79 wxStaticText* sz = new wxStaticText(this, -1, wxString(_T(" Scale Z ")));
80 sliderScaleZ = new wxSlider(this, -1, 100, 1, 200, wxDefaultPosition, this->GetSize(), wxSL_LABELS);
81 sliderScaleZ->SetLineSize(1);
82 Connect(sliderScaleZ->GetId(), wxEVT_SCROLL_THUMBTRACK, (wxObjectEventFunction)&wxMaracasRenderImageManagementPanel::Transform);
83 sizersliders->Add(sz, wxFIXED_MINSIZE);
84 sizersliders->Add(sliderScaleZ,wxSizerFlags().Expand().Center());
86 //ATENTION!! A SUPRIMER LES LIGNES ON BAS SI ELES NE SONT PAS NECESSAIRES!!
89 //wxString choices[2];
90 //choices[0] = wxString(_T("On"));
91 //choices[1] = wxString(_T("Off"));
92 checkboxSA = new wxCheckBox(this,-1,wxString(_T("Surface Rendering A")));
93 Connect(checkboxSA->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSAChange);
94 checkboxSA->SetValue(true);
96 sizercheck->Add(checkboxSA, wxFIXED_MINSIZE);
98 //wxString choices[2];
99 //choices[0] = wxString(_T("On"));
100 //choices[1] = wxString(_T("Off"));
101 checkboxSB = new wxCheckBox(this,-1,wxString(_T("Surface Rendering B")));
102 Connect(checkboxSB->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSBChange);
103 checkboxSB->SetValue(true);
105 sizercheck->Add(checkboxSB, wxFIXED_MINSIZE);
107 //wxString choices[2];
108 //choices[0] = wxString(_T("On"));
109 //choices[1] = wxString(_T("Off"));
110 checkboxSC = new wxCheckBox(this,-1,wxString(_T("Surface Rendering C")));
111 Connect(checkboxSC->GetId(), wxEVT_COMMAND_CHECKBOX_CLICKED, (wxObjectEventFunction)&wxMaracasRenderTabbedPanel::onCheckBoxSCChange);
112 checkboxSC->SetValue(true);
114 sizercheck->Add(checkboxSC, wxFIXED_MINSIZE);
115 sizerrenderprop->Add(sizercheck, wxFIXED_MINSIZE);*/
117 this->SetSizer(sizersliders, true);
118 this->SetAutoLayout(true);
124 wxMaracasRenderImageManagementPanel::~wxMaracasRenderImageManagementPanel()
129 ** Transforms a volume by the given value for the X axis
131 void wxMaracasRenderImageManagementPanel::Transform(wxCommandEvent& event)
133 //printf("wxMaracasRenderImageManagementPanel::Translate translateX = %d \n", sliderTranslateX->GetValue());
134 //printf("wxMaracasRenderImageManagementPanel::Translate translatey = %d \n", sliderTranslateY->GetValue());
135 //printf("wxMaracasRenderImageManagementPanel::Translate translatez = %d \n", sliderTranslateZ->GetValue());
137 wxtrasform->Translate( sliderTranslateX->GetValue(), sliderTranslateY->GetValue(), sliderTranslateZ->GetValue(),
138 sliderRotateX->GetValue(), sliderRotateY->GetValue(), sliderRotateZ->GetValue(),
139 sliderScaleX->GetValue(), sliderScaleY->GetValue(), sliderScaleZ->GetValue() );
142 std::cout << "Exception : " << str << '\n';
143 wxMessageDialog* diag = new wxMessageDialog(this, wxString(str,wxConvUTF8 ), wxString(str,wxConvUTF8 ), wxICON_ERROR);