VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
environmentalStateSetter.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
15 #include <matrix/vlVector.h>
18 #include <vrfutil/rwWindLevels.h>
19 
21 class DtLocalObject;
23 
30 {
31 private:
33 
38 
39 public:
41  virtual ~DtEnvironmentalStateSetter();
42 
43  virtual bool init();
44 
45  virtual void setGlobalEnvironmentObject(DtLocalObject* vrfObject);
46 
48  virtual void setAirTurbidity(double value) = 0;
49  virtual void setAmbientAirTemperature(double value) = 0;
50  virtual void setAmbientAirPressure(double value) = 0;
51  virtual void setAirTemperatureAltitude(double value) = 0;
52  virtual void setAirPressureAltitude(double value) = 0;
53  virtual void setAirTemperatureAltitudeIsSeaLevel(bool value) = 0;
54  virtual void setAirPressureAltitudeIsSeaLevel(bool value) = 0;
55  virtual void setSeaLevelWaterConcentration(double value) = 0;
56  virtual void setPrecipitationIntensity(double value) = 0;
57  virtual void setPrecipitationType(DtVrfWeatherPrecipitationType current) = 0;
58  virtual void setWindSpeed(double value) = 0;
59  virtual void setWindDirection(double value) = 0;
60  virtual void setVisibility(double value) = 0;
61  virtual void setDateAndTimeOfDay(double secondsPastUTC) = 0;
62  virtual void setTimeOfDayAdvancementSpeed(double speed) = 0;
63  virtual void setUnderwaterVisibility(double underwaterVisibility) = 0;
64  virtual void setSurfaceTransparency(double transparency) = 0;
65  virtual void setWaterCurrentSpeed(double waterCurrentSpeed) = 0;
66  virtual void setWaterCurrentDirection(double waterCurrentDirection) = 0;
67  virtual void setAmbientWaterTemperature(double waterTemperature) = 0;
68  virtual void setTidalOffset(double tidalOffset) = 0;
69  virtual void setTidalDirection(bool tidalDirection) = 0;
70  virtual void setSwellState(unsigned int state) = 0;
71  virtual void setSwellStateDirection(double direction) = 0;
72  virtual void setSeaState(unsigned int state) = 0;
73  virtual void setSeaStateDirection(double direction) = 0;
74  virtual void setWindDrivenSeaStateEnabled(bool b) = 0;
75  virtual void setChoppiness(double choppiness) = 0;
76  virtual void setSurgeDepth(double depth) = 0;
77  virtual void setFogHeight(double depth) = 0;
78  virtual void setFogColor(const DtVector& color) = 0;
79  virtual void setSnowAccumulation(double snow) = 0;
80  virtual void setSnowMinimumAltitude(double snow) = 0;
81  virtual void setSnowRoadAccumulation(double snow) = 0;
82  virtual void setRainAccumulation(double rain) = 0;
83  virtual void setThermoclineLayer1Depth(double depth) = 0;
84  virtual void setThermoclineLayer1Permeability(double depth) = 0;
85  virtual void setThermoclineLayer2Depth(double depth) = 0;
86  virtual void setThermoclineLayer2Permeability(double depth) = 0;
87  virtual void setThermoclineLayer3Depth(double depth) = 0;
88  virtual void setThermoclineLayer3Permeability(double depth) = 0;
89  virtual void setThermoclineLayer4Depth(double depth) = 0;
90  virtual void setThermoclineLayer4Permeability(double depth) = 0;
91  virtual void setThermoclineLayer5Depth(double depth) = 0;
92  virtual void setThermoclineLayer5Permeability(double depth) = 0;
93  virtual void setUseDayNightIlluminationModel(bool) = 0;
94  virtual void clearWindLevels() = 0;
95  virtual void setWindLevels(const DtRwWindLevels&) = 0;
96  virtual void setLightingPresent(bool isPresent) = 0;
97 
98 protected:
101 };
102 
106 {
107 public:
110 
112  virtual void setAirTurbidity(double value);
113  virtual void setAmbientAirTemperature(double value);
114  virtual void setAmbientAirPressure(double value);
115  virtual void setAirTemperatureAltitude(double value);
116  virtual void setAirPressureAltitude(double value);
117  virtual void setAirTemperatureAltitudeIsSeaLevel(bool value);
118  virtual void setAirPressureAltitudeIsSeaLevel(bool value);
119  virtual void setSeaLevelWaterConcentration(double value);
120  virtual void setPrecipitationIntensity(double value);
122  virtual void setWindSpeed(double value);
123  virtual void setWindDirection(double value);
124  virtual void setVisibility(double value);
125  virtual void setDateAndTimeOfDay(double secondsPastMidnight);
126  virtual void setTimeOfDayAdvancementSpeed(double speed);
127  virtual void setUnderwaterVisibility(double underwaterVisibility);
128  virtual void setSurfaceTransparency(double transparency);
129  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
130  virtual void setWaterCurrentDirection(double waterCurrentDirection);
131  virtual void setAmbientWaterTemperature(double waterTemperature);
132  virtual void setTidalOffset(double tidalOffset);
133  virtual void setTidalDirection(bool tidalDirection);
134  virtual void setSwellState(unsigned int state);
135  virtual void setSwellStateDirection(double direction);
136  virtual void setSeaState(unsigned int state);
137  virtual void setSeaStateDirection(double direction);
138  virtual void setWindDrivenSeaStateEnabled(bool b);
139  virtual void setChoppiness(double choppiness);
140  virtual void setSurgeDepth(double depth);
141  virtual void setFogHeight(double depth);
142  virtual void setFogColor(const DtVector& color);
143  virtual void setSnowAccumulation(double snow);
144  virtual void setSnowMinimumAltitude(double snow);
145  virtual void setSnowRoadAccumulation(double snow);
146  virtual void setRainAccumulation(double rain);
147  virtual void setThermoclineLayer1Depth(double depth);
148  virtual void setThermoclineLayer1Permeability(double depth);
149  virtual void setThermoclineLayer2Depth(double depth);
150  virtual void setThermoclineLayer2Permeability(double depth);
151  virtual void setThermoclineLayer3Depth(double depth);
152  virtual void setThermoclineLayer3Permeability(double depth);
153  virtual void setThermoclineLayer4Depth(double depth);
154  virtual void setThermoclineLayer4Permeability(double depth);
155  virtual void setThermoclineLayer5Depth(double depth);
156  virtual void setThermoclineLayer5Permeability(double depth);
157  virtual void setUseDayNightIlluminationModel(bool);
158  virtual void setWindLevels(const DtRwWindLevels&);
159  virtual void clearWindLevels();
160  virtual void setLightingPresent(bool isPresent);
161 };
162 
166 {
167 public:
170 
171  virtual bool init();
172 
174  virtual void setAirTurbidity(double value);
175  virtual void setAmbientAirTemperature(double value);
177  virtual void setAmbientAirPressure(double value);
178  virtual void setAirTemperatureAltitude(double value);
179  virtual void setAirPressureAltitude(double value);
180  virtual void setAirTemperatureAltitudeIsSeaLevel(bool value);
181  virtual void setAirPressureAltitudeIsSeaLevel(bool value);
182  virtual void setSeaLevelWaterConcentration(double value);
183  virtual void setPrecipitationIntensity(double value);
185  virtual void setWindSpeed(double value);
186  virtual void setWindDirection(double value);
187  virtual void setVisibility(double value);
188  virtual void setDateAndTimeOfDay(double secondsPastUTC);
189  virtual void setTimeOfDayAdvancementSpeed(double speed);
190  virtual void setUnderwaterVisibility(double underwaterVisibility);
191  virtual void setSurfaceTransparency(double transparency);
192  virtual void setWaterCurrentSpeed(double waterCurrentSpeed);
193  virtual void setWaterCurrentDirection(double waterCurrentDirection);
194  virtual void setAmbientWaterTemperature(double waterTemperature);
195  virtual void setTidalOffset(double tidalOffset);
196  virtual void setTidalDirection(bool tidalDirection);
197  virtual void setSwellState(unsigned int state);
198  virtual void setSwellStateDirection(double direction);
199  virtual void setSeaState(unsigned int state);
200  virtual void setSeaStateDirection(double direction);
201  virtual void setWindDrivenSeaStateEnabled(bool b);
202  virtual void setChoppiness(double choppiness);
203  virtual void setSurgeDepth(double depth);
204  virtual void setFogHeight(double depth);
205  virtual void setFogColor(const DtVector& color);
206  virtual void setSnowAccumulation(double snow);
207  virtual void setSnowMinimumAltitude(double snow);
208  virtual void setSnowRoadAccumulation(double snow);
209  virtual void setRainAccumulation(double rain);
210  virtual void setThermoclineLayer1Depth(double depth);
211  virtual void setThermoclineLayer1Permeability(double depth);
212  virtual void setThermoclineLayer2Depth(double depth);
213  virtual void setThermoclineLayer2Permeability(double depth);
214  virtual void setThermoclineLayer3Depth(double depth);
215  virtual void setThermoclineLayer3Permeability(double depth);
216  virtual void setThermoclineLayer4Depth(double depth);
217  virtual void setThermoclineLayer4Permeability(double depth);
218  virtual void setThermoclineLayer5Depth(double depth);
219  virtual void setThermoclineLayer5Permeability(double depth);
220  virtual void setUseDayNightIlluminationModel(bool);
221  virtual void setWindLevels(const DtRwWindLevels&);
222  virtual void clearWindLevels();
223  virtual void setLightingPresent(bool isPresent);
224 
225 protected:
226  static void tickCallback(void* usr);
227  virtual void tick();
228 
231 };
232 
DtVrfWeatherPrecipitationType
Definition: vrfWeatherStateEnums.h:13
A DtSimCommand subclass which specifies a change to the global weather settings in the simulation eng...
Definition: changeGlobalWeatherCommand.h:22
virtual void setUnderwaterVisibility(double underwaterVisibility)=0
virtual void clearWindLevels()=0
virtual void setThermoclineLayer4Depth(double depth)=0
virtual void setWindDirection(double value)=0
virtual void setPrecipitationType(DtVrfWeatherPrecipitationType current)=0
virtual void setSurfaceTransparency(double transparency)=0
virtual void setAmbientAirTemperature(double value)=0
virtual void setThermoclineLayer5Depth(double depth)=0
virtual void setSeaLevelWaterConcentration(double value)=0
virtual void setAirPressureAltitude(double value)=0
virtual void setAirTurbidity(double value)=0
For weather.
virtual void setThermoclineLayer1Depth(double depth)=0
virtual void setSwellState(unsigned int state)=0
DtLocalObject * myGlobalEnvironmentObject
Definition: environmentalStateSetter.h:100
virtual void setThermoclineLayer5Permeability(double depth)=0
DT_DLL_terrainCS bool operator==(const DtDegMinSec &lhs, const DtDegMinSec &rhs)
virtual void setDateAndTimeOfDay(double secondsPastUTC)=0
virtual void setThermoclineLayer2Depth(double depth)=0
virtual void setChoppiness(double choppiness)=0
virtual void setAmbientAirPressure(double value)=0
virtual void setVisibility(double value)=0
virtual void setLightingPresent(bool isPresent)=0
virtual void setThermoclineLayer4Permeability(double depth)=0
DtChangeGlobalWeatherCommand * myChangeCommand
Definition: environmentalStateSetter.h:229
virtual void setThermoclineLayer3Permeability(double depth)=0
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
virtual void setPrecipitationIntensity(double value)=0
Contains the enums for cloud layers.
virtual void setWindDrivenSeaStateEnabled(bool b)=0
virtual void setSnowAccumulation(double snow)=0
virtual void setAirPressureAltitudeIsSeaLevel(bool value)=0
bool myChangeCommandNeedsSending
Definition: environmentalStateSetter.h:230
virtual void setThermoclineLayer2Permeability(double depth)=0
virtual void setTidalDirection(bool tidalDirection)=0
virtual void setTimeOfDayAdvancementSpeed(double speed)=0
virtual void setSeaStateDirection(double direction)=0
virtual void setAirTemperatureAltitudeIsSeaLevel(bool value)=0
virtual void setSnowMinimumAltitude(double snow)=0
virtual void setRainAccumulation(double rain)=0
virtual void setSeaState(unsigned int state)=0
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
virtual void setWaterCurrentSpeed(double waterCurrentSpeed)=0
Sends environment setting messages to the simulator that is currently simulating the global environme...
Definition: environmentalStateSetter.h:165
virtual void setSnowRoadAccumulation(double snow)=0
virtual void setSurgeDepth(double depth)=0
Sets the environmental state in a locally simulated environmental state object.
Definition: environmentalStateSetter.h:105
virtual void setAirTemperatureAltitude(double value)=0
DtEnvironmentalStateManager * myEnvironmentalStateManager
Definition: environmentalStateSetter.h:99
virtual void setUseDayNightIlluminationModel(bool)=0
virtual void setThermoclineLayer1Permeability(double depth)=0
Maintains the environmental state of the simulation, such as time of day, illumination, and various aspects of the weather. All access to this data from any behavior or dynamics model should be made to this class.
Definition: environmentalStateManager.h:59
virtual void setAmbientWaterTemperature(double waterTemperature)=0
virtual void setTidalOffset(double tidalOffset)=0
virtual void setFogHeight(double depth)=0
virtual void setWindSpeed(double value)=0
Definition: rwWindLevels.h:17
virtual void setSwellStateDirection(double direction)=0
virtual void setWindLevels(const DtRwWindLevels &)=0
Abstract base class for classes that set new environmental state to the environmental state simulator...
Definition: environmentalStateSetter.h:29
virtual void setWaterCurrentDirection(double waterCurrentDirection)=0
virtual void setThermoclineLayer3Depth(double depth)=0
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86
virtual void setFogColor(const DtVector &color)=0

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)