VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtLayeredEnvironmentDataBase.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 <vrvCore/vrvCore.h>
13 
14 #include <vrvCore/DtEnvironment.h>
15 
18 
20 
21 #include <unordered_map>
22 
23 namespace makVrv
24 {
36  {
37  public:
40 
43 
46 
49 
50  public:
52  virtual void addElevationalConfiguration(DtUniqueID layerId);
53 
55  virtual float removeElevationalConfiguration(DtUniqueID layerId);
56 
59  virtual void setAirPressure(float pressure);
60  virtual float airPressure() const;
62 
65  virtual void setAirTemperature(float temp);
66  virtual float airTemperature() const;
68 
71  virtual void setPrecipitationType(DtEnvironment::PrecipitationType precipType);
72  virtual DtEnvironment::PrecipitationType precipitationType() const;
74 
77  virtual void setPrecipitationIntensity(float intensity);
78  virtual float precipitationIntensity() const;
80 
83  virtual void setSeaLevelWaterConcentration(float concentration);
84  virtual float seaLevelWaterConcentration() const;
86 
89  virtual void setLightningPresent(bool present);
90  virtual bool lightningPresent() const;
92 
94  virtual void setBlowingParticulateMatter(DtEnvironment::BlowingParticulateMatterType type);
95  virtual DtEnvironment::BlowingParticulateMatterType blowingParticulateMatter() const;
97 
100  virtual void setSnowMinimumElevation(float elevation);
101  virtual float snowMinimumElevation() const;
103 
106  virtual void setRoadSnowAccumulation(float accumulation);
107  virtual float roadSnowAccumulation() const;
109 
112  virtual void setGroundRainAccumulation(float accumulation);
113  virtual float groundRainAccumulation() const;
115 
118  virtual void setGroundSnowAccumulation(float accumulation);
119  virtual float groundSnowAccumulation() const;
121 
124  virtual void setFogColor(const makArchives::DtEnvironmentRecord::DtColorRecord& color);
125  virtual const makArchives::DtEnvironmentRecord::DtColorRecord& fogColor() const;
127 
130  virtual void setFogHeight(float meters);
131  virtual float fogHeight() const;
133 
136  virtual void setAirTemperatureAltitude(float value);
137  virtual float airTemperatureAltitude() const;
139 
142  virtual void setAirPressureAltitude(float value);
143  virtual float airPressureAltitude() const;
145 
148  virtual void setSwellState(DtDouglasSwellState::Scale state);
149  virtual DtDouglasSwellState::Scale swellState() const;
151 
154  virtual void setSwellStateDirection(float value);
155  virtual float swellStateDirection() const;
157 
160  virtual void setSeaState(DtDouglasSeaState::Scale state);
161  virtual DtDouglasSeaState::Scale seaState() const;
163 
166  virtual void setSeaStateDirection(float value);
167  virtual float seaStateDirection() const;
169 
173  virtual void setWindDrivenSeaStateEnabled(bool value, bool force);
174  virtual bool windDrivenSeaStateEnabled() const;
176 
179  virtual void setWindFetch(float value);
180  virtual float windFetch() const;
182 
185  virtual void setSeaChoppiness(float value);
186  virtual float seaChoppiness() const;
188 
191  virtual void setUnderwaterVisibility(float distance);
192  virtual float underwaterVisibility() const;
194 
197  virtual void setSurfaceTransparency(float value);
198  virtual float surfaceTransparency() const;
200 
203  virtual void setSurgeDepth(float value);
204  virtual float surgeDepth() const;
206 
209  virtual void setAmbientWaterTemperature(float temperature);
210  virtual float ambientWaterTemperature() const;
212 
215  virtual void setWaterCurrentSpeed(float speed);
216  virtual float waterCurrentSpeed() const;
217 
220  virtual void setWaterCurrentDirection(float direction);
221  virtual float waterCurrentDirection() const;
223 
226  virtual void setTidalOffset(float meters);
227  virtual float tidalOffset() const;
229 
232  virtual void setDateAndTimeOfDay(int year, int month, int day, int hour, int minutes, double seconds);
233  virtual void getDateAndTimeOfDay(int& year, int& month, int& day, int& hour, int& minutes, double& seconds) const;
235 
239  virtual void setUseGlobalTimeZone(bool useOrNot);
240  virtual bool useGlobalTimeZone() const;
242 
245  virtual void setTimeOfDayAdvancementSpeed(float speed);
246  virtual float timeOfDayAdvancementSpeed() const;
248 
252  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setBaseMSLAltitude(DtUniqueID layerId, float mslAltitudeInMeters);
253  virtual float baseMSLAltitude(DtUniqueID layerId) const;
255 
259  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setWindSpeed(DtUniqueID layerId, float speedInMetersPerSecond);
260  virtual float windSpeed(DtUniqueID layerId) const;
262 
267  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setWindDirection(DtUniqueID layerId, float offsetInRadiansFromTrueNorth);
268  virtual float windDirection(DtUniqueID layerId) const;
270 
274  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setVisibilityDistance(DtUniqueID layerId, float visibilityInMeters);
275  virtual float visibilityDistance(DtUniqueID layerId) const;
277 
282  virtual makArchives::VisibilityObscurant obscurant(DtUniqueID layerId) const;
284 
288  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setCloudType(DtUniqueID layerId, const std::string& cloudTypeName);
289  virtual std::string cloudType(DtUniqueID layerId) const;
291 
296  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setCloudDensity(DtUniqueID layerId, float cloudDensity);
297  virtual float cloudDensity(DtUniqueID layerId) const;
299 
304  virtual makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* setSkyCoverage(DtUniqueID layerId, float skyCoverage);
305  virtual float skyCoverage(DtUniqueID layerId) const;
307 
311 
314  virtual const makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord* findElevationRecord(DtUniqueID layerId) const;
315 
316  protected:
317 
319  std::unordered_map<DtUniqueID, makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord> myElevationRecords;
322  };
323 }
DtLayeredEnvironmentDataBase is a container class that can be used to maintain the global or a local ...
Definition: DtLayeredEnvironmentDataBase.h:35
The declaration of the makVrv::DtEnvironment class.
Record of application-wide date/time settings.
Definition: DtDateTimeRecord.h:19
bool myUseGlobalTimeZone
Definition: DtLayeredEnvironmentDataBase.h:321
Contains makArchives::DtDateTimeRecord class.
std::unordered_map< DtUniqueID, makArchives::DtEnvironmentRecord::DtElevationalConfigurationRecord > myElevationRecords
Definition: DtLayeredEnvironmentDataBase.h:319
VisibilityObscurant
Definition: DtEnvironmentRecord.h:30
BlowingParticulateMatterType
Definition: DtEnvironmentRecord.h:22
Record for an elevational configuration A record of this type consists of 1) a base MSL altitude...
Definition: DtEnvironmentRecord.h:251
Scale
Definition: DtDouglasSeaScale.h:33
makArchives::DtEnvironmentRecord myEnvironmentRecord
Definition: DtLayeredEnvironmentDataBase.h:318
Contains makVrv::DtVirtualBaseClass class.
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...
The declaration of the makArchives::DtEnvironmentRecord class.
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Scale
Definition: DtDouglasSeaScale.h:114
Record of color settings.
Definition: DtEnvironmentRecord.h:50
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:45
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
PrecipitationType
Definition: DtEnvironmentInterface.h:44
makArchives::DtDateTimeRecord myDateAndTimeRecord
Definition: DtLayeredEnvironmentDataBase.h:320
Contains DLL export macros.

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)