12PANEL_3D_RAYTRACING_OPTIONS_BASE::PANEL_3D_RAYTRACING_OPTIONS_BASE( wxWindow* parent, wxWindowID
id,
const wxPoint& pos,
const wxSize& size,
long style,
const wxString&
name ) :
RESETTABLE_PANEL( parent, id, pos, size, style,
name )
14 wxBoxSizer* bSizerMain;
15 bSizerMain =
new wxBoxSizer( wxVERTICAL );
17 m_renderingLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Rendering Options"), wxDefaultPosition, wxDefaultSize, 0 );
21 m_staticline1 =
new wxStaticLine(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
22 bSizerMain->Add(
m_staticline1, 0, wxEXPAND|wxTOP|wxBOTTOM, 2 );
25 bSizerMain->Add( 0, 5, 0, wxEXPAND, 5 );
28 gSizer1 =
new wxGridSizer( 0, 1, 0, 20 );
34 m_cbRaytracing_addFloor =
new wxCheckBox(
this, wxID_ANY,
_(
"Add floor (slow)"), wxDefaultPosition, wxDefaultSize, 0 );
42 m_cbRaytracing_postProcessing =
new wxCheckBox(
this, wxID_ANY,
_(
"Screen space ambient occlusions and global illumination reflections (slow)"), wxDefaultPosition, wxDefaultSize, 0 );
47 bSizerMain->Add( gSizer1, 0, wxEXPAND|wxTOP|wxBOTTOM|wxLEFT, 5 );
49 wxFlexGridSizer* fgSizer111;
50 fgSizer111 =
new wxFlexGridSizer( 0, 4, 4, 8 );
51 fgSizer111->SetFlexibleDirection( wxBOTH );
52 fgSizer111->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
55 fgSizer111->Add( 0, 0, 1, wxEXPAND, 5 );
57 m_staticText19 =
new wxStaticText(
this, wxID_ANY,
_(
"Number of Samples"), wxDefaultPosition, wxDefaultSize, 0 );
59 fgSizer111->Add(
m_staticText19, 0, wxLEFT|wxRIGHT|wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL, 5 );
61 m_staticText201 =
new wxStaticText(
this, wxID_ANY,
_(
"Spread Factor %"), wxDefaultPosition, wxDefaultSize, 0 );
63 fgSizer111->Add(
m_staticText201, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
65 m_staticText211 =
new wxStaticText(
this, wxID_ANY,
_(
"Recursion Level"), wxDefaultPosition, wxDefaultSize, 0 );
67 fgSizer111->Add(
m_staticText211, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
73 m_numSamples_Shadows =
new wxSpinCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 124,-1 ), wxSP_ARROW_KEYS, 1, 64, 0 );
74 m_numSamples_Shadows->SetToolTip(
_(
"Number of rays that will be cast, into light direction, to evaluate a shadow point") );
78 m_spreadFactor_Shadows =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
82 fgSizer111->Add( 0, 0, 1, wxEXPAND, 5 );
88 m_numSamples_Reflections =
new wxSpinCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 124,-1 ), wxSP_ARROW_KEYS, 1, 32, 0 );
96 m_recursiveLevel_Reflections =
new wxSpinCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 124,-1 ), wxSP_ARROW_KEYS, 1, 5, 0 );
97 m_recursiveLevel_Reflections->SetToolTip(
_(
"Interactions number that a ray can travel through objects. (higher number of levels improve results, specially on very transparent boards)") );
105 m_numSamples_Refractions =
new wxSpinCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 124,-1 ), wxSP_ARROW_KEYS, 1, 5, 0 );
113 m_recursiveLevel_Refractions =
new wxSpinCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize( 124,-1 ), wxSP_ARROW_KEYS, 1, 7, 0 );
119 bSizerMain->Add( fgSizer111, 0, wxEXPAND|wxALL, 5 );
122 bSizerMain->Add( 0, 20, 0, wxEXPAND, 5 );
124 m_lightsLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Lights Configuration"), wxDefaultPosition, wxDefaultSize, 0 );
126 bSizerMain->Add(
m_lightsLabel, 0, wxTOP|wxRIGHT|wxLEFT, 13 );
128 m_staticline2 =
new wxStaticLine(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
129 bSizerMain->Add(
m_staticline2, 0, wxEXPAND|wxTOP|wxBOTTOM, 2 );
131 wxBoxSizer* bLightsSizer;
132 bLightsSizer =
new wxBoxSizer( wxVERTICAL );
134 wxBoxSizer* bTopLineSizer;
135 bTopLineSizer =
new wxBoxSizer( wxHORIZONTAL );
137 m_staticText17 =
new wxStaticText(
this, wxID_ANY,
_(
"Ambient camera light:"), wxDefaultPosition, wxDefaultSize, 0 );
139 bTopLineSizer->Add(
m_staticText17, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
147 bTopLineSizer->Add( 20, 0, 1, 0, 5 );
149 m_staticText5 =
new wxStaticText(
this, wxID_ANY,
_(
"Top light:"), wxDefaultPosition, wxDefaultSize, 0 );
151 bTopLineSizer->Add(
m_staticText5, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
159 bTopLineSizer->Add( 20, 0, 1, 0, 5 );
161 m_staticText6 =
new wxStaticText(
this, wxID_ANY,
_(
"Bottom light:"), wxDefaultPosition, wxDefaultSize, 0 );
163 bTopLineSizer->Add(
m_staticText6, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
171 bTopLineSizer->Add( 20, 0, 0, wxEXPAND, 5 );
174 bLightsSizer->Add( bTopLineSizer, 0, wxEXPAND|wxALL, 5 );
176 wxFlexGridSizer* fgSizer11;
177 fgSizer11 =
new wxFlexGridSizer( 0, 9, 3, 0 );
178 fgSizer11->SetFlexibleDirection( wxHORIZONTAL );
179 fgSizer11->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
182 fgSizer11->Add( 0, 0, 0, 0, 5 );
185 fgSizer11->Add( 0, 0, 0, 0, 5 );
187 m_staticText20 =
new wxStaticText(
this, wxID_ANY,
_(
"Elevation (deg)"), wxDefaultPosition, wxDefaultSize, 0 );
189 fgSizer11->Add(
m_staticText20, 0, wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL, 5 );
191 m_staticText18 =
new wxStaticText(
this, wxID_ANY,
_(
"Azimuth (deg)"), wxDefaultPosition, wxDefaultSize, 0 );
193 fgSizer11->Add(
m_staticText18, 0, wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
196 fgSizer11->Add( 30, 0, 0, 0, 5 );
199 fgSizer11->Add( 0, 0, 0, 0, 5 );
202 fgSizer11->Add( 0, 0, 0, 0, 5 );
204 m_staticText27 =
new wxStaticText(
this, wxID_ANY,
_(
"Elevation (deg)"), wxDefaultPosition, wxDefaultSize, 0 );
206 fgSizer11->Add(
m_staticText27, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 5 );
208 m_staticText28 =
new wxStaticText(
this, wxID_ANY,
_(
"Azimuth (deg)"), wxDefaultPosition, wxDefaultSize, 0 );
210 fgSizer11->Add(
m_staticText28, 0, wxALIGN_CENTER_VERTICAL|wxALIGN_CENTER_HORIZONTAL|wxRIGHT|wxLEFT, 5 );
212 m_staticText21 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 1:"), wxDefaultPosition, wxDefaultSize, 0 );
214 fgSizer11->Add(
m_staticText21, 0, wxALIGN_CENTER|wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
221 m_lightElevation1 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
222 fgSizer11->Add(
m_lightElevation1, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT|wxEXPAND, 5 );
224 m_lightAzimuth1 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
225 fgSizer11->Add(
m_lightAzimuth1, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT|wxEXPAND, 5 );
228 fgSizer11->Add( 10, 0, 0, 0, 5 );
230 m_staticText22 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 5:"), wxDefaultPosition, wxDefaultSize, 0 );
239 m_lightElevation5 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
240 fgSizer11->Add(
m_lightElevation5, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
242 m_lightAzimuth5 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
243 fgSizer11->Add(
m_lightAzimuth5, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
245 m_staticText23 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 2:"), wxDefaultPosition, wxDefaultSize, 0 );
254 m_lightElevation2 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
255 fgSizer11->Add(
m_lightElevation2, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
257 m_lightAzimuth2 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
258 fgSizer11->Add(
m_lightAzimuth2, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
261 fgSizer11->Add( 0, 0, 0, 0, 5 );
263 m_staticText24 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 6:"), wxDefaultPosition, wxDefaultSize, 0 );
272 m_lightElevation6 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
273 fgSizer11->Add(
m_lightElevation6, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT|wxEXPAND, 5 );
275 m_lightAzimuth6 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
276 fgSizer11->Add(
m_lightAzimuth6, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT|wxEXPAND, 5 );
278 m_staticText25 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 3:"), wxDefaultPosition, wxDefaultSize, 0 );
287 m_lightElevation3 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
288 fgSizer11->Add(
m_lightElevation3, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT|wxEXPAND, 5 );
290 m_lightAzimuth3 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
291 fgSizer11->Add(
m_lightAzimuth3, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
294 fgSizer11->Add( 0, 0, 0, 0, 5 );
296 m_staticText26 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 7:"), wxDefaultPosition, wxDefaultSize, 0 );
305 m_lightElevation7 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
306 fgSizer11->Add(
m_lightElevation7, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
308 m_lightAzimuth7 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
309 fgSizer11->Add(
m_lightAzimuth7, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
311 m_staticText171 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 4:"), wxDefaultPosition, wxDefaultSize, 0 );
320 m_lightElevation4 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
321 fgSizer11->Add(
m_lightElevation4, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
323 m_lightAzimuth4 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
324 fgSizer11->Add(
m_lightAzimuth4, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
327 fgSizer11->Add( 0, 0, 0, 0, 5 );
329 m_staticText181 =
new wxStaticText(
this, wxID_ANY,
_(
"Light 8:"), wxDefaultPosition, wxDefaultSize, 0 );
338 m_lightElevation8 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
339 fgSizer11->Add(
m_lightElevation8, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
341 m_lightAzimuth8 =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
342 fgSizer11->Add(
m_lightAzimuth8, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT|wxLEFT, 5 );
345 bLightsSizer->Add( fgSizer11, 0, wxALL, 5 );
348 bSizerMain->Add( bLightsSizer, 0, 0, 5 );
351 this->SetSizer( bSizerMain );
353 bSizerMain->Fit(
this );
A simple color swatch of the kind used to set layer colors.
~PANEL_3D_RAYTRACING_OPTIONS_BASE()
wxTextCtrl * m_lightElevation3
wxTextCtrl * m_lightAzimuth7
wxTextCtrl * m_lightElevation8
wxTextCtrl * m_spreadFactor_Reflections
wxStaticText * m_staticText24
wxSpinCtrl * m_recursiveLevel_Refractions
wxTextCtrl * m_lightElevation4
wxCheckBox * m_cbRaytracing_postProcessing
COLOR_SWATCH * m_colourPickerLight6
wxStaticText * m_staticText211
COLOR_SWATCH * m_colourPickerTopLight
wxStaticText * m_staticText27
wxTextCtrl * m_lightElevation7
wxStaticText * m_renderingLabel
wxCheckBox * m_cbRaytracing_showReflections
wxCheckBox * m_cbRaytracing_addFloor
wxStaticLine * m_staticline2
wxStaticText * m_staticText25
wxCheckBox * m_cbRaytracing_showRefractions
wxTextCtrl * m_lightAzimuth3
wxSpinCtrl * m_numSamples_Reflections
wxStaticLine * m_staticline1
wxStaticText * m_staticText22
COLOR_SWATCH * m_colourPickerLight1
COLOR_SWATCH * m_colourPickerLight4
wxStaticText * m_staticText19
PANEL_3D_RAYTRACING_OPTIONS_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
COLOR_SWATCH * m_colourPickerBottomLight
COLOR_SWATCH * m_colourPickerLight2
wxTextCtrl * m_lightElevation1
wxTextCtrl * m_spreadFactor_Shadows
COLOR_SWATCH * m_colourPickerCameraLight
wxTextCtrl * m_lightAzimuth8
wxTextCtrl * m_lightElevation2
COLOR_SWATCH * m_colourPickerLight8
wxStaticText * m_staticText5
wxStaticText * m_staticText23
wxStaticText * m_lightsLabel
wxSpinCtrl * m_numSamples_Refractions
wxStaticText * m_staticText201
wxTextCtrl * m_lightAzimuth4
wxSpinCtrl * m_recursiveLevel_Reflections
wxStaticText * m_staticText20
wxTextCtrl * m_lightAzimuth5
wxStaticText * m_staticText18
wxTextCtrl * m_lightAzimuth1
wxCheckBox * m_cbRaytracing_renderShadows
COLOR_SWATCH * m_colourPickerLight5
wxTextCtrl * m_spreadFactor_Refractions
wxStaticText * m_staticText21
wxStaticText * m_staticText171
COLOR_SWATCH * m_colourPickerLight3
wxSpinCtrl * m_numSamples_Shadows
wxStaticText * m_staticText26
wxStaticText * m_staticText6
wxStaticText * m_staticText28
COLOR_SWATCH * m_colourPickerLight7
wxCheckBox * m_cbRaytracing_proceduralTextures
wxStaticText * m_staticText17
wxStaticText * m_staticText181
wxTextCtrl * m_lightElevation6
wxTextCtrl * m_lightElevation5
wxTextCtrl * m_lightAzimuth6
wxTextCtrl * m_lightAzimuth2
wxCheckBox * m_cbRaytracing_antiAliasing
A wxPanel that is designed to be reset in a standard manner.