VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEyepointControlWidgetLogic.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2025 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCoreQt/vrvCoreQt.h>
13 #include <vrvCore/DtObserver.h>
16 
17 #include <string>
18 
19 namespace makVrv
20 {
21  class DtDe;
22  class DtEyepointControlWidgetInterface;
23  class DtInputDriver;
24  class DtObserver;
25 
29  {
30 
31  public:
32 
34  static DtEyepointControlWidgetLogic* create(DtDe& de,
36 
39 
40  void update();
41 
43  void setLinearSpeedGain( int gain );
44 
46  void setRotationSpeedGain( int gain );
47 
49  void setOrbitSpeedGain( int gain );
50 
52  void setScaling( bool trueFalse );
53 
55  void setConstrain( bool trueFalse );
56 
58  void setIsFrustumBasedViewMagnificationEnabled( bool trueFalse );
59 
61  void setTerrainDragging( bool trueFalse );
62 
64  virtual void setModelScaleFactor( int factor );
65 
67  virtual void setViewMagnification(double mag);
68 
70  virtual void setEntityLodScale(float lodScale);
71 
73  virtual void setTerrainLodScale(float lodScale);
74 
76  virtual void setSpeedScalingMode(
78 
80  virtual void setSpeedScalingMslModeOffset(double offset);
81 
82 
83  virtual void slot_activate(DtDe* de);
84  virtual void slot_deactivate(DtDe* de);
85 
86  protected:
87 
90 
92  void setCurrentObserver( DtObserver* observer );
93 
95  void onObserverAboutToBeDestroyed( DtInputDriver* inputDriver,
96  DtObserver* observer );
97 
99  void onCurrentObserverChanged( DtInputDriver* inputDriver,
100  DtObserver* observer );
101 
103  void onAttachedToChanged( DtObserver* observer );
104 
106  void onAttachTypeChanged( DtObserver* observer );
107 
109  void onObserverModeChanged( DtObserver* observer, int newObserverMode );
110 
112  void onGainPrecisionChanged( DtObserver* observer, int precision );
113 
115  void onLinearScaledSpeedGainChanged( DtObserver* observer, int gain );
116 
118  void onLinearUnscaledSpeedGainChanged( DtObserver* observer, int gain );
119 
121  void onRotationSpeedGainChanged( DtObserver* observer, int gain );
122 
124  void onOrbitSpeedGainChanged( DtObserver* observer, int gain );
125 
127  void onObserverModeSettingChanged( int observerMode, int settingKey );
128 
130  void onObserverModeModelScaleFactorChanged( int observerMode );
131 
133  void onObserverModeMaxModelScaleFactorChanged( int observerMode );
134 
135  void onObserverViewMagnificationChanged( DtObserver* observer, double mag );
136  void onIsFrustumBasedViewMagnificationEnabledChanged( DtObserver* observer, bool isEnabled );
137 
138  void onObserverEntityLodScaleChanged(DtObserver* observer, float lodScale);
139  void onObserverTerrainLodScaleChanged(DtObserver* observer, float lodScale);
140 
141  void onObserverSpeedScalingModeChanged( DtObserver* observer,
143 
144  void onObserverSpeedScalingMslModeOffsetChanged( DtObserver* observer,
145  double offset );
146 
149  void updateObserverMode( int observerMode );
150 
151  protected:
152 
156 
160  };
161 }
162 
Contains makVrv::DtSubjectObserver class.
DtSignalConnectionManager myObserverConnections
Definition: DtEyepointControlWidgetLogic.h:159
#define DT_DLL_VRVCOREQT
Definition: vrvCoreQt.h:20
Contains DLL export macros.
DtDe & myDe
Definition: DtEyepointControlWidgetLogic.h:153
SpeedScalingMode
Definition: DtObserverObject.h:56
A facade for a DtObserverObject.
Definition: DtObserver.h:38
Abstract interface for the attach widget.
Definition: DtEyepointControlWidgetInterface.h:22
Contains makVrv::DtObserver class.
This class&#39;s main responsibility is to handle keyboard and mouse events from OSG (Qt events are route...
Definition: DtInputDriver.h:43
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
DtSignalConnectionManager myConnections
Definition: DtEyepointControlWidgetLogic.h:158
Base class to provide boost signal/slot management.
DT_DLL_vrfutil double mag(double x[3])
const char int mode
Definition: ioapi.h:38
DtEyepointControlWidgetInterface * myInterface
Definition: DtEyepointControlWidgetLogic.h:154
DtObserver * myCurrentObserver
Definition: DtEyepointControlWidgetLogic.h:157
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:76
DtInputDriver * myInputDriver
Definition: DtEyepointControlWidgetLogic.h:155
voidpf uLong offset
Definition: ioapi.h:42
Logic to manage the Observer Control Widget.
Definition: DtEyepointControlWidgetLogic.h:28

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)