VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
localEnvironment.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
12 
13 #pragma once
14 
15 #include <vrfGuiCore/vrfGuiCore.h>
16 #include <vrvCore/DtCloudLayer.h>
19 
20 #include <vrvCore/DtScene.h>
21 
22 namespace makVrv
23 {
24  class DtDe;
25 }
26 
27 namespace makVrf
28 {
30  {
31  public:
33  virtual ~DtLocalEnvironment();
34 
35 
37  virtual void setLightningPresent(bool lightningPresent);
39  virtual bool lightningPresent() const;
41 
43  virtual void setAirTurbidity(float turbidity);
45  virtual float airTurbidity() const;
47 
49  virtual void setVisibleDistance(float distance);
54  virtual float visibleDistance() const;
56 
58  virtual void setWindSpeed(float windSpeed);
63  virtual float windSpeed() const;
65 
67  virtual void setWindDirection(float direction);
72  virtual float windDirection() const;
74 
76  virtual void setPrecipitationType(PrecipitationType type);
78  virtual PrecipitationType precipitationType() const;
80 
82  virtual void setPrecipitationIntensity(float intensity);
84  virtual float precipitationIntensity() const;
86 
97  virtual void updateOrAddElevationalConfiguration(
98  const DtElevationalConfigurationRecord& record);
99 
107  virtual bool getElevationalConfiguration(float baseMSLAltitude,
109 
117  virtual void removeElevationalConfiguration(float baseMSLAltitude);
118 
129  virtual void moveElevationalConfiguration(
130  float oldBaseMSLAltitude, float newBaseMSLAltitude);
131 
136  virtual void setWindSpeedAtMSLAltitude(float mslAltitude, float windSpeed);
137 
143  virtual float windSpeedAtMSLAltitude(float mslAltitude) const;
144 
150  virtual void setWindDirectionAtMSLAltitude(float mslAltitude, float windDirection);
151 
157  virtual float windDirectionAtMSLAltitude(float mslAltitude) const;
158 
164  virtual void setVisibilityDistanceAtMSLAltitude(float mslAltitude, float visibilityDistance);
165 
171  virtual float visibilityDistanceAtMSLAltitude(float mslAltitude) const;
172 
178  virtual void setObscurantAtMSLAltitude(float mslAltitude, VisibilityObscurant obscurant);
179 
185  virtual VisibilityObscurant obscurantAtMSLAltitude(float mslAltitude) const;
186 
192  virtual void setCloudTypeAtMSLAltitude(float mslAltitude, CloudType cloudType);
193 
199  virtual CloudType cloudTypeAtMSLAltitude(float mslAltitude) const;
200 
205  virtual void setSkyCoverageAtMSLAltitude(float mslAltitude, float skyCoverage);
206 
211  virtual float skyCoverageAtMSLAltitude(float mslAltitude) const;
212 
214  virtual void setAmbientAirTemperature(float temperature);
216  virtual float ambientAirTemperature() const;
218 
220  virtual void setAmbientAirPressure(float pressure);
222  virtual float ambientAirPressure() const;
224 
227  virtual void setAirPressureAltitude(float altitude);
228  virtual float airPressureAltitude() const;
230 
233  virtual void setAirTemperatureAltitude(float altitude);
234  virtual float airTemperatureAltitude() const;
236 
239  virtual void setAirPressureAltitudeIsSeaLevel(bool seaLevel);
240  virtual bool airPressureAltitudeIsSeaLevel() const;
242 
245  virtual void setAirTemperatureAltitudeIsSeaLevel(bool seaLevel);
246  virtual bool airTemperatureAltitudeIsSeaLevel() const;
248 
251  virtual void setSeaLevelWaterConcentration(float water);
252  virtual float seaLevelWaterConcentration() const;
254 
256  virtual void setFogHeight(float height);
258  virtual float fogHeight() const;
260 
262  virtual void setFogColor(const DtVector& color);
264  virtual DtVector fogColor() const;
266 
268  virtual void setGroundFogColor(const DtVector& color) override;
270  virtual DtVector groundFogColor() const override;
272 
274  virtual void setSeaState(makVrv::DtDouglasSeaState::Scale state);
276  virtual makVrv::DtDouglasSeaState::Scale seaState() const;
278 
280  virtual void setSeaStateDirection(float dir);
282  virtual float seaStateDirection() const;
284 
286  virtual void setWindDrivenSeaState(bool enabled);
288  virtual bool windDrivenSeaState() const;
290 
292  virtual void setSwellState(makVrv::DtDouglasSwellState::Scale state);
294  virtual makVrv::DtDouglasSwellState::Scale swellState() const;
296 
298  virtual void setSwellStateDirection(float dir);
300  virtual float swellStateDirection() const;
302 
304  virtual void setWindFetch(float distance);
306  virtual float windFetch() const;
308 
310  virtual void setSeaChoppiness(float chop);
312  virtual float seaChoppiness() const;
314 
317  void setUnderwaterVisibilityEnabled(bool enabled);
318  bool underwaterVisibilityEnabled() const;
320 
322  virtual void setUnderwaterVisibility(float distance);
324  virtual float underwaterVisibility() const;
326 
328  virtual void setWaterSurfaceTransparency(float normalizedValue);
330  virtual float waterSurfaceTransparency() const;
332 
334  virtual void setSurgeDepth(float meters);
336  virtual float surgeDepth() const;
338 
340  virtual void setDepthOffset(float meters);
342  virtual float depthOffset() const;
344 
346  virtual void setAmbientWaterTemperature(float temperature);
348  virtual float ambientWaterTemperature() const;
350 
352  virtual void setWaterCurrentSpeed(float speed);
354  virtual float waterCurrentSpeed() const;
356 
358  virtual void setWaterCurrentDirection(float direction);
361  virtual float waterCurrentDirection() const;
363 
365  virtual void setTidalOffset(float meters);
367  virtual float tidalOffset() const;
369 
371  virtual void setTidalDirection(bool inOut);
373  virtual bool tidalDirection() const;
375 
377  virtual void setThermoclineDepth(unsigned int layer, float depth);
379  virtual float thermoclineDepth(unsigned int layer) const;
381 
383  virtual void setThermoclinePermeability(unsigned int layer, float permeability);
385  virtual float thermoclinePermeability(unsigned int layer) const;
387 
389  virtual void setGroundSnowAccumulation(float depth);
391  virtual float groundSnowAccumulation() const;
393 
395  virtual void setRoadSnowAccumulation(float depth);
397  virtual float roadSnowAccumulation() const;
399 
401  virtual void setSnowMinimumElevation(float elevation);
403  virtual float snowMinimumElevation() const;
405 
408  virtual void setSnowElevationTransition(float elevation);
409  virtual float snowElevationTransition() const;
411 
413  virtual void setGroundRainAccumulation(float depth);
415  virtual float groundRainAccumulation() const;
417 
418  virtual void loadDefaults(bool loadOnlyFactorySettings = false);
419 
422  virtual void getRecord(makArchives::DtEnvironmentRecord& record);
423 
426  virtual void setFromRecord(
427  const makArchives::DtEnvironmentRecord& record);
428 
430  virtual makArchives::DtEnvironmentRecord environmentConditionRecord(const std::string&);
431 
439  virtual void saveEnvironment(const std::string& name);
440 
443  virtual void setEnvironment(const std::string& name);
444 
447  virtual void removeEnvironment(const std::string& name);
448 
450  virtual void renameEnvironment(
451  const std::string& oldName, const std::string& newName);
452 
457  virtual void getEnvironmentNames(std::vector<std::string>& names,
458  bool includeLocalOnlyEnvironment = true);
459 
462  virtual void setDefaultEnvironmentName(const std::string& name);
463 
466  virtual std::string defaultEnvironmentName() const;
467 
469  void restore() {};
470 
472  void saveAsDefaults();
474 
476  virtual void exportSettings(const std::string& filename) {};
478  virtual void importSettings(const std::string& filename){};
480 
482  virtual void slot_coordinateSystemChanged() {};
483  virtual void slot_oceanLayerAdded(const makVrv::DtOceanLayer& layer) {};
484  virtual void slot_oceanLayerToBeDeleted(const makVrv::DtOceanLayer& layer) {};
486  double seaLevel) {};
488  int range) {};
489  virtual void slot_surgeDepthChanged(double depth) {};
490  virtual void slot_depthOffsetChanged(double offset) {};
491  virtual void autoSave();
492 
493  protected:
495 
498 
501 
504  };
505 }
virtual void slot_oceanLayerSeaLevelChanged(const makVrv::DtOceanLayer &layer, double seaLevel)
Handle a change to an ocean layer&#39;s sea level.
Definition: localEnvironment.h:485
The declaration of the makVrv::DtEnvironmentInterface class.
virtual void slot_oceanLayerLodRangeChanged(const makVrv::DtOceanLayer &layer, int range)
Handle a change to an ocean layer&#39;s lod range.
Definition: localEnvironment.h:487
virtual void slot_surgeDepthChanged(double depth)
Handle a change to surge depth.
Definition: localEnvironment.h:489
Definition: localEnvironment.h:29
makVrv::DtEnvironmentList myEnvironmentList
This is an env list that reflects saved settings.
Definition: localEnvironment.h:500
The declaration of the makVrv::DtEnvironmentList class.
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
VisibilityObscurant
Definition: DtEnvironmentRecord.h:21
Record for an elevational configuration A record of this type consists of 1) a base MSL altitude...
Definition: DtEnvironmentRecord.h:236
Scale
Definition: DtDouglasSeaScale.h:33
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 DtEnvironmentInterface is an interface class providing abstraction for different managers of envi...
Definition: DtEnvironmentInterface.h:40
makArchives::DtEnvironmentRecord myCurrentSettings
This is an env record that reflects our current settings.
Definition: localEnvironment.h:497
virtual void slot_depthOffsetChanged(double offset)
Handle a change to depth offset.
Definition: localEnvironment.h:490
virtual void importSettings(const std::string &filename)
Import / export the list of named conditions (.enlx file)
Definition: localEnvironment.h:478
Scale
Definition: DtDouglasSeaScale.h:114
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:36
DtVector myGroundFogColor
Until this is in an environment record.
Definition: localEnvironment.h:503
Contains vrvCore::DtCloudLayerRecord declaration.
PrecipitationType
Definition: DtEnvironmentInterface.h:44
virtual void slot_coordinateSystemChanged()
\name Slots for handling changes in the simulation.
Definition: localEnvironment.h:482
The ocean layer is a type of terrain layer which contains information about an area that should be re...
Definition: DtOceanLayer.h:25
makVrv::DtDe & myDe
Definition: localEnvironment.h:494
void restore()
Restores to backup settings from startup default.
Definition: localEnvironment.h:469
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
virtual void slot_oceanLayerAdded(const makVrv::DtOceanLayer &layer)
Handle an ocean layer being added.
Definition: localEnvironment.h:483
voidpf uLong offset
Definition: ioapi.h:42
CloudType
Cloud layer types.
Definition: DtCloudTypeMapper.h:35
The DtEnvironmentList maintains a list of DtEnvironment records that can be looked up by the environm...
Definition: DtEnvironmentList.h:32
Contains makVrv::DtScene class.
virtual void slot_oceanLayerToBeDeleted(const makVrv::DtOceanLayer &layer)
Handle an ocean layer being removed.
Definition: localEnvironment.h:484

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)