VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOceanRenderSettingsWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
14 #include <QtWidgets/QWidget>
15 
16 class QCheckBox;
17 class QVBoxLayout;
18 class QLabel;
19 class QComboBox;
20 class QSlider;
21 class QGroupBox;
22 class QRadioButton;
23 class QSpinBox;
24 class QPushButton;
25 class QSignalMapper;
26 class QButtonGroup;
27 
28 namespace makVrv
29 {
30 
31  class DtSliderSpinboxWidget;
32  class DtSliderDoubleSpinboxWidget;
33 
40  {
41  Q_OBJECT
42 
43  public:
44 
45  //needs to match TritonQuality in DtTritonManager. Didn't want vrvCoreQt
46  // to depend on vrvTriton for a single enum.
50  TritonQuality_Best
51  };
52 
55  DtDe& de, QWidget* parent, Qt::WindowFlags flags = Qt::Widget);
56 
58  virtual ~DtOceanRenderSettingsWidget();
59 
62  virtual void setOceanPlanarReflectionsEnabled(bool state);
63 
67  virtual void setOceanPlanarReflectionsLODScale( float scale );
68 
73  virtual void setOceanPlanarReflectionsLODScaleRange(float max, float min, float step);
74 
75 #if 0
76  virtual void setOceanPlanarReflectionsSpecifyFarClip( bool enabled );
80 
84  virtual void setOceanPlanarReflectionsFarClip( double farClip );
85 #endif
86 
89  virtual void setWaveSprayEffectEnabled(bool state);
90 
93  virtual void setRotorWashDecalEnabled(bool state);
94 
97  virtual void setTidalStreamWakesEnabled(bool state);
98 
101  virtual void setOceanHeightMapResolution(double res);
102 
107  virtual void setOceanHeightMapResolutionRange(float max, float min, float step);
108 
113  virtual void setRegenerateHeightMapPercThreshold(double threshold);
114 
119  virtual void setRegenerateHeightMapPercThresholdRange(float max, float min, float step);
120 
124  virtual void setOceanHeightMapTextureSize(int val);
125 
130  virtual void setOceanHeightMapTextureSizeRange(int max, int min, int step);
131 
134  virtual void setRegenerateCubeMapThreshold(double threshold);
135 
140  virtual void setRegenerateCubeMapThresholdRange(float max, float min, float step);
141 
144  virtual void setOmitCloudInCubeMap(bool state);
145 
149  virtual void setPlanarReflectionTextureWidth(int val);
150 
155  virtual void setPlanarReflectionTextureWidthRange(int max, int min, int step);
156 
160  virtual void setPlanarReflectionTextureHeight(int val);
161 
166  virtual void setPlanarReflectionTextureHeightRange(int max, int min, int step);
167 
170  virtual void setOceanQuality(unsigned int quality);
171 
174  virtual void setPlanarReflectionsShowSpeedTrees(bool val);
175 
176  protected slots:
177 
181  void on_oceanPlanarReflectionsCheckChanged(int state);
182  void on_oceanPlanarReflectionsLODScaleChanged(double scale);
183 #if 0
184  void on_oceanPlanarReflectionsSpecifyFarClipChanged(int state);
185  void on_oceanPlanarReflectionsFarClipChanged(double farClip);
186 #endif
187  void on_waveSprayEffectCheckChanged(int state);
188  void on_rotorWashDecalCheckChanged(int state);
189  void on_tidalStreamWakesCheckChanged(int state);
190  void on_oceanHeightMapResolutionChanged(double res);
191  void on_regenerateCubeMapThreshold(double threshold);
192  void on_omitCloudInCubeMap(int state);
193  void on_regenerateHeightMapPercThreshold(double threshold);
194  void on_oceanHeightMapTextureSizeChanged(int val);
195  void on_planarReflectionTextureWidthChanged(int val);
196  void on_planarReflectionTextureHeightChanged(int val);
197  void on_planarReflectionsShowSpeedTreesChanged(int val);
198 
199  void on_oceanQualityClicked(int);
200 
202 
203  protected:
204 
207  void setupGui();
208 
211  void connectToSignals();
212 
213  void enablePlanarReflectionParameters( bool enabled );
214 
215  protected:
216 
218 
220 #if 0
221  QCheckBox* myOceanPlanarReflectionsSpecifyFarClipCheckbox;
222 #endif
226 
228 
231 
234 
237 
240 #if 0
241  QLabel* myOceanPlanarReflectionsFarClipLabel;
242  DtSliderDoubleSpinboxWidget* myOceanPlanarReflectionsFarClip;
243 #endif
244 
247 
249 
250 
252 
255 
258 
261  QRadioButton* myOceanQualityGood;
262  QRadioButton* myOceanQualityBetter;
263  QRadioButton* myOceanQualityBest;
264 
266  };
267 }
QCheckBox * myWaveSprayEffect
Definition: DtOceanRenderSettingsWidget.h:223
DtSliderSpinboxWidget * myPlanarReflectionTextureWidthSlider
Definition: DtOceanRenderSettingsWidget.h:254
QLabel * myOceanPlanarReflectionsLODScaleLabel
Definition: DtOceanRenderSettingsWidget.h:238
DtSliderSpinboxWidget * myPlanarReflectionTextureHeightSlider
Definition: DtOceanRenderSettingsWidget.h:257
QLabel * myRegenerateHeightMapPercThresholdLabel
Definition: DtOceanRenderSettingsWidget.h:232
DtSliderDoubleSpinboxWidget * myRegenerateCubeMapThresholdSpinBox
Definition: DtOceanRenderSettingsWidget.h:246
QLabel * myOceanHeightMapLabel
Definition: DtOceanRenderSettingsWidget.h:227
A widget for pairing a horizontal slider with a spinbox.
Definition: DtSliderSpinboxWidget.h:30
QLabel * myPlanarReflectionsTextureSizeLabel
Definition: DtOceanRenderSettingsWidget.h:251
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
DtOceanRenderSettingsWidget implements the DtOceanRenderSettingsInterface for Qt. ...
Definition: DtOceanRenderSettingsWidget.h:38
TritonQuality
Definition: DtOceanRenderSettingsWidget.h:47
DtSliderDoubleSpinboxWidget * myRegenerateHeightMapPercThresholdSlider
Definition: DtOceanRenderSettingsWidget.h:233
QCheckBox * myOmitCloudInCubeMapCheckBox
Definition: DtOceanRenderSettingsWidget.h:248
QRadioButton * myOceanQualityGood
Definition: DtOceanRenderSettingsWidget.h:261
Definition: DtOceanRenderSettingsWidget.h:48
QCheckBox * myOceanPlanarReflectionsCheckbox
Definition: DtOceanRenderSettingsWidget.h:219
Definition: DtOceanRenderSettingsWidget.h:49
QSignalMapper * myOceanQualitySignalMapper
Definition: DtOceanRenderSettingsWidget.h:259
DtSliderDoubleSpinboxWidget * myOceanPlanarReflectionsLODScale
Definition: DtOceanRenderSettingsWidget.h:239
DtSliderDoubleSpinboxWidget * myOceanHeightMapResolution
Definition: DtOceanRenderSettingsWidget.h:230
QCheckBox * myRotorWashDecal
Definition: DtOceanRenderSettingsWidget.h:224
QLabel * myOceanHeightMapResolutionLabel
Definition: DtOceanRenderSettingsWidget.h:229
A widget for pairing a horizontal slider with a double spin-box.
Definition: DtSliderDoubleSpinboxWidget.h:30
QLabel * myPlanarReflectionTextureHeightLabel
Definition: DtOceanRenderSettingsWidget.h:256
QButtonGroup * myOceanQualityButtonGroup
Definition: DtOceanRenderSettingsWidget.h:260
This is the interface which the render settings widget will inherit from and the logic will use to ta...
Definition: DtOceanRenderSettingsInterface.h:19
DtDe & myDe
Definition: DtOceanRenderSettingsWidget.h:217
QLabel * myPlanarReflectionTextureWidthLabel
Definition: DtOceanRenderSettingsWidget.h:253
QCheckBox * myPlanarReflectionsShowSpeedTreesCheckbox
Definition: DtOceanRenderSettingsWidget.h:265
QCheckBox * myTidalStreamWakes
Definition: DtOceanRenderSettingsWidget.h:225
Interface for rendering settings gui.
QRadioButton * myOceanQualityBest
Definition: DtOceanRenderSettingsWidget.h:263
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
QLabel * myOceanHeightMapTextureSizeLabel
Definition: DtOceanRenderSettingsWidget.h:235
DtSliderSpinboxWidget * myOceanHeightMapTextureSizeSlider
Definition: DtOceanRenderSettingsWidget.h:236
QRadioButton * myOceanQualityBetter
Definition: DtOceanRenderSettingsWidget.h:262
QLabel * myRegenerateCubeMapThresholdLabel
Definition: DtOceanRenderSettingsWidget.h:245

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)