VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtRenderSettingsWidget.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
15 #include <QtWidgets/QWidget>
16 
17 class QCheckBox;
18 class QVBoxLayout;
19 class QLabel;
20 class QComboBox;
21 class QSlider;
22 class QGroupBox;
23 class QRadioButton;
24 class QSpinBox;
25 class QPushButton;
26 
27 namespace makVrv
28 {
29 
30  class DtSliderSpinboxWidget;
31  class DtSliderDoubleSpinboxWidget;
32 
39  {
40  Q_OBJECT
41 
42  public:
43 
46  DtDe& de, QWidget* parent, Qt::WindowFlags flags = Qt::Widget);
47 
49  virtual ~DtRenderSettingsWidget();
50 
53  virtual void setWireframeEnabled(bool enabled);
54 
57  virtual void setPerformanceOverlayShown(unsigned int state);
58 
61  virtual void setImguiOverlayShown(bool shown);
62 
65  virtual void setChannelProjectionResizePolicy(
67 
70  virtual void setSymbolTransparency(int scale);
71 
74  virtual void setTerrainScalingEnabled(bool enabled);
75 
78  virtual void setTerrainScaleFactor(double scaleFactor);
79 
83  virtual void setTerrainScalingAllowed(bool allowed);
84 
87  virtual void setClearTrackHistoriesOnTerrainScaleChanged(bool clear);
88 
92  virtual void setUseAutofocus(bool useAutofocus);
93 
96  virtual void setFocalDepth(double focalDepth);
97 
100  virtual void setFocalRange(double focalRange);
101 
104  virtual void setWaterOnScreenSize(double size);
105 
109  virtual void setIndirectLodTransitionPercentage(float val);
110 
113  virtual void setCrepuscularRaysEnabled(bool state);
114 
117  virtual void setOcclusionCullingEnabled(bool state);
118 
119 
121  virtual void setComponentVisualizationMode(int mode);
122 
126  virtual int addComponenetVisualizationEntry(QString entry);
127 
129  virtual void setDistanceUnitLabels(const DtUnicode& unitLabel);
130 
132  virtual void setDistanceDecimals(int decimals);
133 
135  virtual void setMaxFocalRange(float distance);
136 
138  virtual void setMaxFocalDepth(float distance);
139 
141  virtual void setAtcGlobalModelEnable(bool state);
142 
144  virtual void setAtcGlobalTerrainEnable(bool state);
145 
147  virtual void setAtcEnableDither(bool state);
148 
150  virtual void setHbaoRadius(float value) override;
152  virtual void setMaxHbaoRadius(float value) override;
154  virtual void setHbaoBias(float value) override;
156  virtual void setMaxHbaoBias(float value) override;
158  virtual void setHbaoExponent(float value) override;
160  virtual void setMaxHbaoExponent(float value) override;
162  virtual void setHbaoSmallScalar(float value) override;
164  virtual void setMaxHbaoSmallScalar(float value) override;
166  virtual void setHbaoLargeScalar(float value) override;
168  virtual void setMaxHbaoLargeScalar(float value) override;
170  virtual void setHbaoSettingsDecimals(int decimals) override;
171 
173  virtual void setHbaoDepthClampMode(int state) override;
174 
175 
176  protected slots:
177 
181  void on_reloadShaderButton_clicked();
182  void on_wireframeCheckChanged(int state);
183  void on_renderStatsChanged(int state);
184  void on_renderImguiChanged(int state);
185  void on_myChannelProjectionResizePolicyCombo_currentIndexChanged(int index);
186  void on_SymbolTransparencyChanged(int state);
187  void on_terrainScalingEnabledCheckChanged(int state);
188  void on_terrainScaleFactorSliderChanged(int val);
189  void on_ClearTrackHistoriesCheckChanged(int state);
190  void on_useAutofocusCheckChanged(int state);
191  void on_focalDepthSliderChanged(double val);
192  void on_focalRangeSliderChanged(double val);
193  void on_waterOnScreenSizeSliderChanged(double val);
194  void on_indirectLodTransitionPercentageChanged(double val);
195  void on_crepuscularRaysCheckChanged(int state);
196  void on_occlusionCullingCheckChanged(int state);
197  void on_atcGlobalTerrainEnableCheckChanged(int state);
198  void on_atcGlobalModelEnableCheckChanged(int state);
199  void on_atcEnableDitherCheckChanged(int state);
200  void on_componentVisualizationCombo_currentIndexChanged(int selectedIndex);
201 
202  void on_hbaoRadiusSliderChanged(double val);
203  void on_hbaoBiasSliderChanged(double val);
204  void on_hbaoExponentSliderChanged(double val);
205  void on_hbaoSmallScalarSliderChanged(double val);
206  void on_hbaoLargeScalarSliderChanged(double val);
207  void on_hbaoDepthClampCombo_currentIndexChanged(int selectedIndex);
208 
209 
211 
212  protected:
213 
216  void setupGui();
217 
220  void connectToSignals();
221 
222  typedef struct widgetStr
223  {
224  QString label;
225  QString tooltip;
226  } WidgetStrings;
227 
228  typedef enum
229  {
230  MaterialComponentIndex = 0,
231  MaterialComponentScalerIndex = 1
232  } WidgetStringIndex;
233 
234  typedef WidgetStrings WidgetStringCollection[2];
235 
236  void setupMaterialWidget(DtSliderDoubleSpinboxWidget* widget,
237  QLabel* label, bool useMaterial,
238  const WidgetStringCollection& strings);
239 
240  protected:
241 
243 
249 
252 
256 
258 
260 
262 
268 
271 
274 
277 
279 
283 
284  //HBAO widgets
297 
298 
300  };
301 }
QCheckBox * myTerrainScalingEnabledCheckBox
Definition: DtRenderSettingsWidget.h:253
QCheckBox * myAtcGlobalTerrainEnableCheckbox
Definition: DtRenderSettingsWidget.h:281
A unicode string. DtUnicode stores a UTF-16 encoded unicode string. Code Point, a Unicode character...
Definition: DtUnicode.h:33
DtSliderDoubleSpinboxWidget * myHbaoSmallScalarSlider
Definition: DtRenderSettingsWidget.h:292
This is the interface which the render settings widget will inherit from and the logic will use to ta...
Definition: DtRenderSettingsInterface.h:21
QLabel * myHbaoDepthClampLabel
Definition: DtRenderSettingsWidget.h:295
QComboBox * myHbaoDepthClampCombo
Definition: DtRenderSettingsWidget.h:296
QCheckBox * myOcclusionCullingCheckbox
Definition: DtRenderSettingsWidget.h:261
DtSliderDoubleSpinboxWidget * myHbaoExponentSlider
Definition: DtRenderSettingsWidget.h:290
QCheckBox * myWireframeCheckbox
Definition: DtRenderSettingsWidget.h:244
QLabel * myHbaoBiasLabel
Definition: DtRenderSettingsWidget.h:287
QLabel * myHbaoRadiusLabel
Definition: DtRenderSettingsWidget.h:285
voidpf void uLong size
Definition: ioapi.h:39
DtSliderDoubleSpinboxWidget * myHbaoBiasSlider
Definition: DtRenderSettingsWidget.h:288
QLabel * mySymbolTransparencyLabel
Definition: DtRenderSettingsWidget.h:250
QLabel * myWaterOnScreenSizeLabel
Definition: DtRenderSettingsWidget.h:269
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
DtSliderDoubleSpinboxWidget * myFocalDepthSlider
Definition: DtRenderSettingsWidget.h:265
QLabel * myFocalDepthLabel
Definition: DtRenderSettingsWidget.h:264
Contains DLL export macros.
QSlider * myTerrainScaleFactorSlider
Definition: DtRenderSettingsWidget.h:255
QLabel * myChannelProjectionResizePolicyLabel
Definition: DtRenderSettingsWidget.h:247
QCheckBox * myClearTrackHistoriesCheckBox
Definition: DtRenderSettingsWidget.h:257
QSlider * mySymbolTransparencySlider
Definition: DtRenderSettingsWidget.h:251
DtSliderDoubleSpinboxWidget * myIndirectLodTransitionPercentageSlider
Definition: DtRenderSettingsWidget.h:273
QCheckBox * myCrepuscularRaysCheckbox
Definition: DtRenderSettingsWidget.h:259
DtSignalConnectionManager myConnections
Definition: DtRenderSettingsWidget.h:299
Interface for rendering settings gui.
DtSliderDoubleSpinboxWidget * myHbaoRadiusSlider
Definition: DtRenderSettingsWidget.h:286
DtDe & myDe
Definition: DtRenderSettingsWidget.h:242
QLabel * myComponentVisualizationLabel
Definition: DtRenderSettingsWidget.h:275
QLabel * myTerrainScaleFactorLabel
Definition: DtRenderSettingsWidget.h:254
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
DtRenderSettingsWidget implements the DtRenderSettingsInterface for Qt. It provides the Qt widgets us...
Definition: DtRenderSettingsWidget.h:37
A widget for pairing a horizontal slider with a double spin-box. The spin box must be clamped to a mi...
Definition: DtSliderDoubleSpinboxWidget.h:30
QLabel * myIndirectLodTransitionPercentageLabel
Definition: DtRenderSettingsWidget.h:272
DtSliderDoubleSpinboxWidget * myFocalRangeSlider
Definition: DtRenderSettingsWidget.h:267
QLabel * myHbaoExponentLabel
Definition: DtRenderSettingsWidget.h:289
DtSliderDoubleSpinboxWidget * myWaterOnScreenSizeSlider
Definition: DtRenderSettingsWidget.h:270
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
QCheckBox * myRenderStatsCheckbox
Definition: DtRenderSettingsWidget.h:245
QComboBox * myComponentVisualizationCombo
Definition: DtRenderSettingsWidget.h:276
QString tooltip
Definition: DtRenderSettingsWidget.h:225
Definition: DtRenderSettingsWidget.h:222
Base class to provide boost signal/slot management.
QCheckBox * myAtcEnableDitherCheckbox
Definition: DtRenderSettingsWidget.h:282
QCheckBox * myAtcGlobalModelEnableCheckbox
Definition: DtRenderSettingsWidget.h:280
const char int mode
Definition: ioapi.h:38
QLabel * myHbaoLargeScalarLabel
Definition: DtRenderSettingsWidget.h:293
DtSliderDoubleSpinboxWidget * myHbaoLargeScalarSlider
Definition: DtRenderSettingsWidget.h:294
QLabel * myHbaoSmallScalarLabel
Definition: DtRenderSettingsWidget.h:291
QLabel * myFocalRangeLabel
Definition: DtRenderSettingsWidget.h:266
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
ProjectionResizePolicy
Definition: DtChannelConfiguration.h:46
QPushButton * myReloadShaderButton
Definition: DtRenderSettingsWidget.h:278
QString label
Definition: DtRenderSettingsWidget.h:224
QCheckBox * myUseAutofocusCheckbox
Definition: DtRenderSettingsWidget.h:263
QComboBox * myChannelProjectionResizePolicyCombo
Definition: DtRenderSettingsWidget.h:248
QCheckBox * myImguiCheckbox
Definition: DtRenderSettingsWidget.h:246

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)